【发布时间】:2014-01-06 00:40:25
【问题描述】:
大家好,这是我的第一篇文章,如果我做错了什么,请见谅。
我在centOS 6.5 VPS with openssl 1.01e ruby-gems 1.8.25, mongrel_rails server 上使用Ruby 1.8.7, Rails 2.3.15。我的应用程序需要使用 Net::HTTP over SSL 和身份验证连接到 API。关键细节是一切都运行良好,突然间我开始没有任何变化:
Errno::ECONNRESET (Connection reset by peer - SSL_connect):<br />
/usr/lib/ruby/1.8/net/http.rb:586:in `connect'<br />
/usr/lib/ruby/1.8/net/http.rb:586:in `connect'<br />
/usr/lib/ruby/1.8/net/http.rb:553:in `do_start'<br />
/usr/lib/ruby/1.8/net/http.rb:542:in `start'<br />
根据Errno::ECONNRESET (Connection reset by peer - SSL_connect) 和网络上的其他一些答案,我相信我的 openSSL 证书已经过时(这是我能想象到的唯一解释,为什么问题始于以前的工作代码)。我阅读了有关修复 openSSL 证书的链接文章,但它仅涉及 OSX 和一些 Ubuntu 信息,我使用的是 CentOS 6.5,而不是使用 RVM。谁能告诉我如何重置 Ruby 在 CentOS 系统上使用的 openSSL 证书(如果这甚至是我的问题)?我在这上面卡了几天,没有任何进展。
到目前为止,我尝试使用 yum 重新安装 OpenSSL,使用 /script/installruby 重新安装 ruby,但我无法更新 ruby gems 超过 1.8.25 或服务器拒绝启动。
【问题讨论】:
标签: ruby openssl ssl-certificate ruby-on-rails-2 net-http