我正在尝试做迈克尔·哈特尔的教程。当我尝试在gemset中安装rails 3.2.14时,我遇到以下问题:
$gem安装导轨-V3.2.14
错误:找不到有效的gem“rails”(=3.2.14),原因如下:
无法从下载数据https://rubygems.org/ -SSL_connect返回=1 errno=0 state=SSLv3读取服务器证书B:证书验证失败(https://s3.amazonaws.com/production.s3.rubygems.org/specs.4.8.gz)
在谷歌搜索之后,我发现我可以为rubygems使用非SSL源,所以我运行了:
sudo gem源代码-ahttp://rubygems.org
然后,当我再次尝试安装rails时,它成功了。然而,我仍然遇到了上述问题,但作为警告:
警告:无法从中提取数据’https://rubygems.org/“:SSL_connect返回=1 errno=0 state=SSLv3读取服务器证书B:证书验证失败(https://s3.amazonaws.com/production.s3.rubygems.org/specs.4.8.gz)
如何完全删除此警告/错误
我正在使用以下工具:
- rvm 1.22.15
- ruby 2.0.0p247(2013-06-27修订版41674)[x86_64-darwin12.3.0]
- OSX 10.8.5
RVM&;OSX用户
确保使用最新的rvm:
rvm稳定下来
然后你可以做两件事:
-
更新证书:
rvm osx ssl证书全部更新 -
更新rubygems:
rvm rubygems最新版本
对于非RVM用户
查找证书的路径:
cert\u file=$(ruby-ropenssl-e'puts OpenSSL::X509::DEFAULT\u cert\u file')
生成证书:
安全查找证书-a-p/Library/Keychains/System.keychain>;“$cert\u文件”
安全查找证书-a-p/System/Library/Keychains/SystemRootCertificates.keychain>&燃气轮机;“$cert\u文件”
整个代码:https://github.com/wayneeseguin/rvm/blob/master/scripts/functions/osx-ssl-certs
对于非OSX用户
确保更新软件包ca证书(在旧系统上可能不可用-不要使用不再接收安全更新的旧系统)
Windows说明
Ruby Installer windows版由Luis Lavena编写,证书路径将显示类似于C:/Users/Luis/…check的内容https://github.com/oneclick/rubyinstaller/issues/249 了解更多详细信息和此答案https://stackoverflow.com/a/27298259/497756 修理