Nodejs、Ruby、およびgit plus bowerをインストールした後にFoundationをインストールしようとしています。
次のエラーが発生し続けますが、修正方法がわかりません。
有効なgem 'foundation'(> = 0)が見つかりませんでした。理由は次のとおりです: https://rubygems.org/ からデータをダウンロードできません-SSL_connectが返されました= 1 errno = 0 state = SSLv3サーバー証明書Bの読み取り:証明書の検証に失敗しました( https://api.rubygems.org/latest_specs.4.8.gz )
何か案は?
これを試してください(迅速ですが安全ではありません)
gem sources --remove https://rubygems.org/
gem sources -a http://rubygems.org/
注:HTTP経由のダウンロードは暗号化されません
[〜#〜] rvm [〜#〜]を使用している場合(強く推奨)実行できます
rvm osx-ssl-certs update all
それ以外の場合は、 http://guides.rubygems.org/ssl-certificate-update/ の指示に従ってください。 そしてupdate_rubygems
patchは私にとって何もしませんでした。手動で.pemファイルをインストールすると、おそらくうまくいきました。
RVMがなければリンクはあなたが試すことができることを示唆しています...
gem install bundler
または
gem update --system
これを見て、問題が詳細に説明されています:
背景を読み、これを修正する方法について 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
Sébastienからの参照 から取得
基本的には、 最新の証明書 をダウンロードして$RUBYHOME/lib/Ruby/2.1.0/rubygems/ssl_certs
に配置します。 (2.1.0
とは異なるバージョンのrubygemsがインストールされている可能性があるため、パスを適切に調整してください)。
Rubygemsは、次にgemコマンドを呼び出すときに証明書を使用する必要があります。
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がWebサイトに接続するときに予期するCA証明書を取得し、Rubyが証明書の存続を期待する場所にインストールします。
問題を1行のコードで解決するスマートな方法を詳しく説明してくれたGabe Evansに感謝 ブログ投稿 に感謝します。
Gabeのソリューションを変更して、rubygems website で指定されたCA証明書を使用しました。この問題が発生した理由の詳細については、そこで説明されています。
このソリューションの利点は、httpsを使用してrubygemsの更新された証明書をフェッチすることです。 githubからこの証明書を取得するため、SHA1証明書でも機能します。また、opensslライブラリをプルして証明書を配置する必要があるため、Rubyを使用しているので便利です。
Gemインストールをバージョン2.6.7に更新する必要があります。ここでこの解決策を試してください:
https://github.com/rubygems/rubygems/issues/177
http://guides.rubygems.org/ssl-certificate-update/#installing-using-update-packages