4

我已经尝试了超过 5 种不同版本的 ruby​​,目前使用的是 1.9.2-p194。我收到此错误:

Connection reset by peer - SSL_connect (Errno::ECONNRESET)

我已经重新编译,我尝试了 rvm、rbenv,甚至 apt-get ruby​​ ......这有效:

openssl ssl_client -connect google.com:443

然而这并没有:

require "net/https"
require "uri"

uri = URI.parse("https://google.com/")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

http.start do |agent|
  p agent.get(uri.path).read_body
end

有人知道如何更好地调试吗?我正在使用 Ubuntu 12.04。在本地,这是可行的,我使用的是 Ubuntu 10.10。但是,openssl ssl_client 在两个操作系统上都可以工作,所以我只能假设这是一个红宝石问题。

编辑:

使用 rbenv 1.9.2-p320 让它工作,但相同的 ruby​​ 版本在 rvm 下不起作用。我会很感激任何见解。

4

2 回答 2

2

我想你必须在安装 OpenSSL 后重新安装(重新编译)Ruby:

rvm reinstall 1.9.3
于 2012-09-05T06:51:23.517 回答
1

For the sake of those having the same issues. I found my problem was because i had ssl: true in config/ldap.yml (if you have that make sure your ldap server is ssl). If that helps you select this as the answer for those who come next.

于 2013-03-20T14:00:16.613 回答