前两天顺手降级了一下sharp的依赖到最新版(0.25.4),后果捅了马蜂窝,cnpm, npm均告失败,折腾了良久才解决,好郁闷,这里顺便记录一下。
cnpm遇到的问题
就是新版sharp的装置脚本会主动去github的releases外面下载预编译好的libvips二进制包,这个货色并不能通过cnpm的淘宝仓库减速,然而因为家喻户晓的起因,国内下载github的releases那不是慢的问题,是间接卡死……
npm遇到的问题
第二步,尝试一下npm加代理吧,本人有个始终用的小机场的,因而首先须要在Linux上装置一个python版某乳客户端,不过py版外面不像C#版自带privoxy,因而只能间接作为socks5代理应用,设置为npm代理:
npm config set proxy "socks5://localhost:1080"npm config set https-proxy "socks5://localhost:1080"
尝试npm install sharp
来装置,后果还是不行!看了下错误信息:
info sharp Downloading https://github.com/lovell/sharp-libvips/releases/download/v8.9.1/libvips-8.9.1-linux-x64.tar.gzERR! sharp tunneling socket could not be established, cause=Parse Error: Expected HTTP/
竟然不能用socks5代理,还必须得用HTTP!好烦!
装置Privoxy
C#版的某乳客户端就是用privoxy来把socks5代理转换为http代理的,因而在linux上如法炮制:
# 装置privoxy,centos下用yumapt-get install privoxy# 批改privoxy配置文件,在开端增加一行(留神最初的.):# forward-socks5 / 127.0.0.1:1080 .vi /etc/privoxy/config# privoxy作为服务启动service privoxy start# 验证一下HTTP代理是否失常curl -x localhost:8118 https://www.baidu.com# 把npm的代理设置为httpnpm config set proxy "http://localhost:8118"npm config set https-proxy "http://localhost:8118"
从新运行npm install sharp
,终于失常了!