【问题标题】:"Certificate verify failed" while using http://rubygems.org instead of https使用 http://rubygems.org 而不是 https 时出现“证书验证失败”
【发布时间】:2017-03-25 18:14:35
【问题描述】:

我曾经在使用 https://rubygems.org 时遇到证书验证错误。

建议了一种解决方法:删除“s”(因此我最终使用 http 而不是 https)。它工作了一段时间,但今天在启动一个新的 Rails 应用程序rails new 'filename' 后,我得到了相同的证书验证错误:

Gem::RemoteFetcher::FetchError: SSL_connect returned=1 errno=0 state=SSLv3 read 服务器证书 B:证书验证失败 (https://rubygems.org/gems/mime-types-data-3.2016.0521.gem) 安装 mime-types-data (3.2016.0521) 和 Bundler 时出错 无法继续。 确保 gem install mime-types-data -v '3.2016.0521' 之前成功 捆绑。

我输入gem sources 却发现https://rubygems.org 根本不存在。

    $ gem sources
*** CURRENT SOURCES ***

http://rubygems.org

我去 gemfile 找到了

source 'https://rubygems.org'

可能是什么问题?

【问题讨论】:

  • http://rubygems.org 重定向到https://rubygems.org,所以你被原来的问题困住了。
  • 我刚刚检查过,rubygems.org 发送的证书链看起来不错,至少,只要您信任根证书。根证书是广受信任的/C=BE/O=GlobalSign nv-sa/OU=Root CA/CN=GlobalSign Root CA

标签: ruby-on-rails ssl certificate windows-10


【解决方案1】:

一定要更新证书,http://guides.rubygems.org/ssl-certificate-update/

然后查找默认证书文件

ruby -ropenssl -e 'p OpenSSL::X509::DEFAULT_CERT_FILE' that outputs "/usr/local/etc/openssl/cert.pem"

然后重命名,那将使用你下载的新证书

mv /usr/local/etc/openssl/cert.pem /usr/local/etc/openssl/cert.pem.old

【讨论】:

    猜你喜欢
    • 2014-09-24
    • 2013-12-06
    • 1970-01-01
    • 2011-12-27
    • 2020-11-01
    • 1970-01-01
    • 2019-04-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多