安装nodejs,ruby和git plus bower后尝试安装Foundation。
我一直收到以下错误,我不知道如何修复它:
无法找到有效的宝石'基础'(> = 0),原因如下: 无法从https://rubygems.org/下载数据 - SSL_connect返回= 1 errno = 0状态= SSLv3读取服务器证书B:证书验证失败(https://api.rubygems.org/latest_specs.4.8.gz)
有什么想法吗?
答案 0 :(得分:39)
试试这个(快速但不安全)
gem sources --remove https://rubygems.org/
gem sources -a http://rubygems.org/
注意:通过HTTP下载将是未加密的
答案 1 :(得分:16)
如果你正在使用 RVM (强烈推荐),你可以运行
rvm osx-ssl-certs update all
否则,您可以按照http://guides.rubygems.org/ssl-certificate-update/ 上的说明进行操作,虽然 update_rubygems
补丁对我没有任何作用,但手动安装.pem文件可能会有效。
如果没有RVM,链接表明您可以尝试...
gem install bundler
或
gem update --system
答案 2 :(得分:12)
看看这个问题,详细解释了这个问题:
答案 3 :(得分:8)
请阅读背景信息并按照the official guide from rubygems.org了解如何解决此问题。
<强> TL; DR:强>
gem install --local $USER\Downloads\rubygems-update-2.6.7.gem
(Try %userprofile% instead of $USER if using Windows)
update_rubygems --no-ri --no-rdoc
gem uninstall rubygems-update -x
答案 4 :(得分:4)
取自reference given by Sébastien
基本上,您下载latest certificate并将其放入$RUBYHOME/lib/ruby/2.1.0/rubygems/ssl_certs
。 (请注意,您可能安装了不同版本的rubygems而不是2.1.0
,因此请适当调整路径。)
下次调用 gem 命令时,Rubygems应该使用证书。
答案 5 :(得分:1)
您需要将gem安装更新到2.6.7版。在这里尝试这个解决方案:
https://github.com/rubygems/rubygems/issues/1770
http://guides.rubygems.org/ssl-certificate-update/#installing-using-update-packages
答案 6 :(得分:1)
在linux或docker容器中,以下命令将解决问题:
curl https://raw.githubusercontent.com/rubygems/rubygems/master/lib/rubygems/ssl_certs/index.rubygems.org/GlobalSignRootCA.pem > $(ruby -ropenssl -e 'puts OpenSSL::X509::DEFAULT_CERT_FILE')
以上命令将获取rubygems在连接到其网站时所期望的CA证书,并将其安装在ruby期望证书生效的位置。
感谢Gabe Evans帮助blog post,详细说明了在一行代码中解决问题的智能方法。
我修改了Gabe的解决方案,以使用rubygems website上指定的CA证书。有关此问题产生原因的进一步讨论可以在那里找到。
此解决方案的好处是它使用https来获取rubygems的更新证书。由于它从github获取此证书,因此即使使用SHA1证书也可以使用。它也很方便,因为它使用ruby,通过拉入openssl库将cert放置在需要的位置。