Heim > Fragen und Antworten > Hauptteil
安装了 ruby
$ ruby -v
ruby 2.2.3p173 (2015-08-18 revision 51636) [x64-mingw32]
$ gem update --system
ERROR: While executing gem ... (Gem::RemoteFetcher::FetchError)
Errno::ECONNABORTED: An established connection was aborted by the software in your host machine. - SSL_connect (https://api.rubygems.org/specs.4.8.gz)
$ gem install jekyll
ERROR: While executing gem ... (Gem::RemoteFetcher::FetchError)
Errno::ECONNABORTED: An established connection was aborted by the software in your host machine. - SSL_connect (https://api.rubygems.org/quick/Marshal.4.8/jekyll-2.5.3.gemspec.rz)
有大神可以指导一下 问题吗 ?
巴扎黑2017-05-02 09:26:45
FetchError 明显是连接错误,使用国内的镜像源即可
在用户主目录下,Linux 是 ~,Windows 是 C:\Users\USERNAME (也可能是 Administrator 或 ProgramData) 下面新建一个 .gemrc 文件,写入下面内容试试:
:sources:
- https://ruby.taobao.org
:update_sources: true
仅有的幸福2017-05-02 09:26:45
因为翻墙(用了HTTP代理),如果你用的是HTTP
代理,HTTPs
连接就会失败。
因为HTTPS是带服务器验证的,而代理转发数据是要涉及 HTTP 层的数据,代理服务没有网站的私钥所以是无法解码HTTP头里面的数据的。(其实是一开始的认证没有通过)
解决方法是:
1、给代理服务器添加证书(似乎不太安全,而且代理服务器也不一定有)
2、用socket
代理
3、不要翻墙了,改用国内的源吧 gem source
(这才是最靠谱的)