可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
I am trying to install the Bundler gem on my Mac. With the command:
sudo gem install bundler
I get the following error:
ERROR: Could not find a valid gem 'bundler' (>= 0), here is why:
Unable to download data from https://rubygems.org/ - SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (https://s3.amazonaws.com/production.s3.rubygems.org/latest_specs.4.8.gz)
It clearly seems to be a server issue, but how do I go about solving this? gem update --system
is currently up-to-date. Is there an alternative way to get Bundler?
回答1:
Had the same issue and everything is described here: http://railsapps.github.io/openssl-certificate-verify-failed.html
tl;dr Recent versions of RVM, the Ruby Version Manager, include a utility to diagnose and resolve errors caused by outdated certificate files. See the article Installing Rails for instructions and advice. The RVM website explains how to install RVM.
If you’ve installed RVM, try this:
$ rvm -v
# rvm 1.19.1 (stable)
$ rvm osx-ssl-certs status all
# Certificates for...
$ rvm osx-ssl-certs update all
# Updating certificates...
That’s all that is needed to resolve the issue if you are using RVM (you must be using RVM version 1.19.1 or newer).
回答2:
After looking at some of the answers to the Stack question @Matt referenced, although the error was different, one of the solutions also helped me for this problem.
In the home directory, create a file called .gemrc
. Add :ssl_verify_mode: 0
to the file. Bundler then installs without issue.
This works for my situation as I'm behind a corporate firewall. However, this obviously opens up a security hole.
回答3:
Windows users:
You can't run rvm
command on Windows as you can see here, but you can fix the error without it. Just add a new source adress with http instead of https:
gem sources -a http://rubygems.org
Then you can run:
gem install bundler
回答4:
I had this same problem using Windows, and removing the security from the Hypertext Transfer Protocol solve it.
Paste in your terminal:
gem sources -r https://rubygems.org -a http://rubygems.org
Hope it will help! ★
回答5:
I faced the same problem installing bundler on windows 8.1. I solved it and installed bundler and other gems in the following way
- Go to https://gist.github.com/luislavena/f064211759ee0f806c88 and follow instructions.
My gem version was 2.2.2. Update gem to 2.4.5 with the command:
gem update --system
Install gems:
gem install bundler
gem install rails
Hope that helps.
回答6:
For those that arent using rvm, but are using homebrew:
brew tap raggi/ale
brew install openssl-osx-ca
This worked for me.
回答7:
Below way solve my problem:
- In the home directory , find file
.gemrc
edit this file and find
:sources:
-https://rubygems.org/
change https
into http
- save the file and reopen the shell.
回答8:
for those Chinese users:
$ gem install bundler
ERROR: Could not find a valid gem 'bundler' (>= 0), here is why:
Unable to download data from https://rubygems.org/ - Errno::ECONNRESET: Connection reset by peer - SSL_connect (https://api.rubygems.org/latest_specs.4.8.gz)
$ gem sources --add https://ruby.taobao.org/ --remove https://rubygems.org/
$ gem sources -l
*** CURRENT SOURCES ***
https://ruby.taobao.org/
$ gem install bundler
Fetching: bundler-1.12.5.gem (100%)
Successfully installed bundler-1.12.5
Parsing documentation for bundler-1.12.5
Installing ri documentation for bundler-1.12.5
Done installing documentation for bundler after 4 seconds
1 gem installed
My environment: rbenv, ruby 2.1.2, ubuntu 16.04 LTS
回答9:
Try gem source -c
and then install bundler again
that should solve the problem
回答10:
Finding this answer a couple of years later, I didn't feel comfortable with making my installation less secure, so I updated my Ruby installation to Ruby 2.2.2, which made the problem go away.
回答11:
- Here is my error when I input the command
sudo gem install bundler --no-ri --no-rdoc
.
ERROR: Could not find a valid gem 'bundler' (>= 0), here is why:
Unable to download data from https://rubygems.org/ - Errno::ECONNRESET: Connection reset by peer - SSL_connect (https://api.rubygems.org/latest_specs.4.8.gz)
- And my solution is input the next command lines:
gem sources --remove https://rubygems.org/
gem sources --remove http://rubygems.org/
gem sources -l
and the output show:
*** CURRENT SOURCES ***
http://rubygems.org/
- Then, try
sudo gem install bundler --no-ri --no-rdoc
again:
Fetching: bundler-1.11.2.gem (100%)
Successfully installed bundler-1.11.2
1 gem installed
Bingo!!!