今天在装Jekyll
的时候,按照 GitHub Pages 的配置方法走下去安装好Ruby
的时候,发现gem install bundler
会报错,如下:
$ gem install bundler
ERROR: Could not find a valid gem 'bundler' (>= 0), here is why:
Unable to download data from https://rubygems.org/ - SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (https://api.rubygems.org/specs.4.8.gz)
谷歌找了半天也没有很好的解决方案,直到看到了这条 ,完美解决了问题。
为什么会出现这个问题?
因为gem
在访问资源的时候是安全的SSL
访问,而Windows
系统这时候没有持有证书!和Ruby
Gem
无关。所以这时候需要给Windows
系统层上配置安全证书(certificate)。
如何解决问题?
- 到这个网站 上下载
cacert.pem
这个文件,(实际上就是打开这个文件然后复制下内容,然后存到同名文件中)把这个文件放入任意你想放入的目录,等下要用到这个文件 - 打开
CMD
命令行(win+r
窗口中键入cmd
回车),键入set SSL_CERT_FILE=C:\somewhere\cacert.pem
后面就是输入cacert.pem
的地址,注意,这时候设置的是临时变量,也就是说只能在当前的CMD
窗口有效。 - 随后键入
gem install bundler
,可以看到bundler
成功安装。