我使用的是运行 8.1 的 Windows PC 并使用 Ruby Installer 2.1.5。
安装 gem 时出现错误:
C:\> gem install bundle
ERROR: Could not find a valid gem 'bundle' (>= 0), here is why:
Unable to download data from https://rubygems.org/ - SSL_connect retur
ned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (
https://api.rubygems.org/latest_specs.4.8.gz)
希望有好的解决方案。
我也遇到这个问题了。但使用旧版本并不是正确的解决方案。
这是帮助修复此证书错误的两个解决方案
1。使用 http 而不是 https 将允许您安装 gem 而不会出现该错误
gem 安装捆绑器 -r --source http://rubygems.org/
我遇到了这个问题,看来问题是由于 ruby 安装程序版本(2...)引起的,我尝试了版本 1.9.3 并解决了问题。
其原因可能是由于 HTTPS 拦截,这在许多企业环境中很常见。 正确的解决方案不是切换到使用
http://
,而是为您的组织添加必要的根证书。
.pem
。文件的内容应如下所示:
-----BEGIN CERTIFICATE-----
MIIDdTCCAl2gAwIBAgILBAAAAAABFUtaw5QwDQYJKoZIhvcNAQEFBQAwVzELMAkG
A1UEBhMCQkUxGTAXBgNVBAoTEEdsb2JhbFNpZ24gbnYtc2ExEDAOBgNVBAsTB1Jv
b3QgQ0ExGzAZBgNVBAMTEkdsb2JhbFNpZ24gUm9vdCBDQTAeFw05ODA5MDExMjAw
<< Truncated for brevity >>
AbEVtQwdpf5pLGkkeB6zpxxxYu7KyJesF12KwvhHhm4qxFYxldBniYUr+WymXUad
DKqC5JlR3XC321Y9YeRq4VzW9v493kHMB65jUr9TU/Qr6cf9tveCX4XSQRjbgbME
HMUfpIBvFSDJ3gyICh3WZlXi/EjJKSZp4A==
-----END CERTIFICATE-----
ssl_certs
位置这可以使用以下命令来完成:
> gem which rubygems
C:/Ruby21/lib/ruby/2.1.0/rubygems.rb
通过上述响应,
ssl_certs
目录将位于:
C:\Ruby21\lib\ruby\2.1.0\rubygems\ssl_certs\
.pem
文件的副本放入 ssl_certs
目录>dir C:\Ruby21\lib\ruby\2.1.0\rubygems\ssl_certs\rubygems.org\
10/29/2024 05:33 PM 2,206 org_root.pem
SSL_CERT_FILE
设置为新根 .pem
文件的完整路径set SSL_CERT_FILE=C:\Ruby21\lib\ruby\2.1.0\rubygems\ssl_certs\org_root.pem