2016-11-11 75 views
0

當我使用https:/rubygems.org時,我用來獲取證書驗證錯誤。使用http://rubygems.org替代https時使用「證書驗證失敗」

建議解決方法:刪除「s」(所以我最終使用http而不是https)。它的工作了一段時間,但是從今天開始一個新的Rails應用程序rails new 'filename'我得到了同樣的證書驗證錯誤後:

Gem::RemoteFetcher::FetchError: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (https://rubygems.org/gems/mime-types-data-3.2016.0521.gem) An error occurred while installing mime-types-data (3.2016.0521), and Bundler cannot continue. Make sure that gem install mime-types-data -v '3.2016.0521' succeeds before bundling.

我輸入gem sources才發現https://rubygems.org甚至不存在。

$ gem sources 
*** CURRENT SOURCES *** 

http://rubygems.org 

我去Gemfile中,我發現

source 'https://rubygems.org' 

可能是什麼問題呢?

+0

'HTTP新的證書: // ruby​​gems.org'重定向到https:// ruby​​gems.org',這樣你就會陷入原來的問題。 –

+0

我剛剛檢查過,至少,只要您信任根證書,rubygems.org發送的證書鏈看起來就不錯。根證書是廣泛可信的'/ C = BE/O = GlobalSign nv-sa/OU =根CA/CN = GlobalSign根CA'。 – rlandster

回答

0

一定要更新證書,http://guides.rubygems.org/ssl-certificate-update/

然後尋找默認的證書文件

ruby -ropenssl -e 'p OpenSSL::X509::DEFAULT_CERT_FILE' that outputs "/usr/local/etc/openssl/cert.pem" 

然後改名,將使用您下載

mv /usr/local/etc/openssl/cert.pem /usr/local/etc/openssl/cert.pem.old 
相關問題