前两天随便把sharp的依赖升级到最新版本(0.25.4)。结果打了个马蜂窝,cnpm和npm都失败了。我花了很长时间才解决它。太令人沮丧了。我会记录在这里。cnpm遇到的问题是新版sharp的安装脚本会自动从github的releases下载预编译好的libvips二进制包。这个东西是不能通过cnpm的淘宝仓库加速的。不是慢的问题,是直接卡死。。。npm遇到的问题第二步,尝试给npm加代理。我有一个一直在使用的小机场,所以我需要先在Linux上安装一个python版本的牛奶客户端。结束,但是py版本不像C#版本自带privoxy,所以只能直接作为socks5代理,设置为npm代理:npmconfigsetproxy"socks5://localhost:1080"npmconfigsethttps-proxy"socks5://localhost:1080"尝试npminstallsharp安装,还是不行!阅读错误信息:infosharpDownloadinghttps://github.com/lovell/sharp-libvips/releases/download/v8.9.1/libvips-8.9.1-linux-x64.tar.gzERR!sharptunnelingsocketcouldnotbeestablished,cause=ParseError:预期的HTTP/socks5代理无法使用,必须使用HTTP!很烦人!一个安装了PrivoxyC#版本的milk客户端,使用privoxy将socks5代理转为http代理,所以在linux上也是如此:#安装privoxy,centos下使用yumapt-getinstallprivoxy#修改privoxy配置文件,在theend(注意最后一个.):#forward-socks5/127.0.0.1:1080.vi/etc/privoxy/config#privoxystartsasaserviceserviceprivoxystart#验证HTTP代理是否正常curl-xlocalhost:8118https://www.baidu.com#设置npm代理为httpnpmconfigsetproxy"http://localhost:8118"npmconfigsethttps-proxy"http://localhost:8118"重新运行npminstallsharp,终于正常了!
