LoginSignup
5

More than 5 years have passed since last update.

posted at

updated at

Gem::RemoteFetcher::FetchError: SSL_connect

bundle install でエラー。これ何度もはまってる(T_T)
ruby2.3系でも同じエラーでハマった…
ここが詳しい⇒ RubyInstallerでRuby2.1系を入れた後にRubygems証明書を入れ替えずにgemコマンドを使えるようにする

>bundle install
Fetching gem metadata from https://rubygems.org/.........
Resolving dependencies...
Using rake 10.4.2

エラーはこれ

Gem::RemoteFetcher::FetchError: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certific
ate verify failed (https://rubygems.org/gems/faker-1.1.2.gem)
An error occurred while installing faker (1.1.2), and Bundler cannot continue.
Make sure that `gem install faker -v '1.1.2'` succeeds before bundling.
Gemfile
source 'https://rubygems.org'
# ruby '2.0.0'
ruby '1.9.3'
#ruby-gemset=railstutorial_rails_4_0

gem 'rails', '4.0.5'
gem 'bootstrap-sass', '2.3.2.0'
gem 'sprockets', '2.11.0'
gem 'bcrypt-ruby', '3.1.2'
gem 'faker', '1.1.2'

解決: 正しい証明書ファイルに置き換える

※詳しい方法はこちら。
http://qiita.com/shimoju/items/394818b4989b94680aaf

概略:
1. 以下のStep1からAddTrustExternalCARoot-2048.pemというファイルをダウンロードしてくる。
https://gist.github.com/luislavena/f064211759ee0f806c88#step-1-obtain-the-new-trust-certificate

2.ダウンロードしたファイルをssc_certsというフォルダーにコピーする。

C:\RailsInstaller\Ruby2.1.0\lib\ruby\2.1.0\rubygems\ssl_certs

※どうやっても全然解決しないと思ったら、rubygems直下に置いていたということがあったので、パスには十分注意すること。

以上。

そうすると、以下も成功するようになるし、bundle install も成功するようになる。

>gem update --system

実はこれをやっても解決しないこともあった… ※RailsIntaller(Ruby2.2版)
そんな時には緊急避難的対処を…

https ⇒ http に

Gemfileの1行目、httpshttp に変更すれば、bundle install には成功するようになる。

Gemfile
source 'http://rubygems.org'

※すぐに元に戻しておいたほうがいいと思う。

あと、ホームディレクトリの .gemrc に記載されている、https://...の行を削除すれば、gem install なども成功するようになる。

.gemrc
---
:backtrace: false
:bulk_threshold: 1000
:sources:
- http://rubygems.org/
- https://rubygems.org/   ← ★この行を削除
:update_sources: true
:verbose: true
install: --no-document
update: --no-document

※すぐに元に戻しておいたほうがいいと思う。

参考:
http://d.hatena.ne.jp/iishun/20120423/1335200728

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
5