不能 运行 Ruby 2.2.3 在 OSX 上使用 RVM
Can't run Ruby 2.2.3 with RVM on OSX
我有两台 MacBook(一台在 Mavericks 上,另一台在 Yosemite 上),同样的事情发生在两台电脑上。
使用 RVM 安装 Ruby 2.2.3 后,出现以下错误:
.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 初始化程序中将 Excon.defaults[:ssl_verify_peer] 设置为 false(仅在 development/test envs 上)使其工作。
更新:从源代码重新安装 2.2.3 解决了我所有的问题。
rvm remove 2.2.3
rvm install 2.2.3 --disable-binary
除了 El Capitan 上的 brew install openssl
之外别无他法。我已经尝试了所有方法,例如使用 RVM 更新证书、从 haxx.se 替换 SSL 证书或重新安装 ruby。没有别的工作。
我有两台 MacBook(一台在 Mavericks 上,另一台在 Yosemite 上),同样的事情发生在两台电脑上。 使用 RVM 安装 Ruby 2.2.3 后,出现以下错误:
.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 初始化程序中将 Excon.defaults[:ssl_verify_peer] 设置为 false(仅在 development/test envs 上)使其工作。
更新:从源代码重新安装 2.2.3 解决了我所有的问题。
rvm remove 2.2.3
rvm install 2.2.3 --disable-binary
除了 El Capitan 上的 brew install openssl
之外别无他法。我已经尝试了所有方法,例如使用 RVM 更新证书、从 haxx.se 替换 SSL 证书或重新安装 ruby。没有别的工作。