我有两台MacBook(一只是小牛,另一只在优胜美地),同样的事也发生在两者上.
在安装 Ruby 2.2.3与RVM之后,我收到以下错误:
在安装 Ruby 2.2.3与RVM之后,我收到以下错误:
.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/net/http.rb:923:in `connect': SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify Failed (Faraday::SSLError)
我已经尝试在线搜索解决方案,但似乎没有任何效果.大多数有这个问题的人都在运行Windows机器.
$rvm osx-ssl-certs status all Certificates for /usr/local/etc/openssl/cert.pem: Up to date. Certificates for /etc/openssl/cert.pem: Up to date.
切换回2.2.2工作正常.有什么想法吗?
解决方法
下载
http://curl.haxx.se/ca/cacert.pem并添加
export SSL_CERT_FILE=PATH_TO_THe_DOWNLOADED_FILE/cacert.pem
到.bash_profile / .zshrc部分地修复了问题,因为它在我的系统上引发了以下错误:
Excon::Errors::SocketError: Unable to verify certificate,please set `Excon.defaults[:ssl_ca_path] = path_to_certs`,`ENV['SSL_CERT_DIR'] = path_to_certs`,`Excon.defaults[:ssl_ca_file] = path_to_file`,`ENV['SSL_CERT_FILE'] = path_to_file`,`Excon.defaults[:ssl_verify_callback] = callback` (see OpenSSL::SSL::SSLContext#verify_callback),or `Excon.defaults[:ssl_verify_peer] = false` (less secure).
在Rails初始化程序(仅在开发/测试envs中)将Excon.defaults [:ssl_verify_peer]设置为false可使其正常工作.
更新:从源代码重新安装2.2.3摆脱了我所有的问题.
rvm remove 2.2.3 rvm install 2.2.3 --disable-binary