2016-08-09 40 views
1

红宝石版本:红宝石2.2.4p230(2015年12月16日修订53155)I386-的mingw32]如何防止SSL错误关于Ruby窗口

错误:OpenSSL的:: SSL :: SSLError:所以SSL_connect返回= 1错误号= 0状态= SSLv3的读取服务器证书B:

url = URI.parse("https://www.google.com/") 
http = Net::HTTP.new(url.host, url.port) 
http.open_timeout = 10 
http.read_timeout = 10 
path = url.path 
path = '/' if path == '' 
path += '?' + url.query unless url.query.nil? 
http.use_ssl = true 
request = Net::HTTP::Get.new(path, nil) 
response = http.request(request) 
puts response.inspect 

我试图解决方案的约2谷歌的网页,并在那里我只是提出一个问题,创业板:证书验证失败

用于测试

代码: https://github.com/liveeditor/net_http_ssl_fix/issues/2

我已经试过手动添加证书,添加环境变量,声称修复它的宝石和谷歌的前2页的所有其他解决方案。

请让我知道需要更多信息来帮助我解决这个问题!

回答

1

尝试这种解决方案:

https://gist.github.com/fnichol/867550

从本质上讲,下载cacert.pem文件。然后将您的系统env变量SSL_CERT_FILE设置为该位置。

虽然这个解决方案在几个月前为我工作,但我最近在我的笔记本电脑和台式机上都进行了Windows更新,当我使用open_uri时会产生这个问题。

让我知道这是如何解决你的。

+0

感谢您的贡献,我已阅读了很多人,对于这个解决方案的工作人员,所以我会建议大家尝试一下,但对我而言,它没有,我尝试了2个最新版本的rails 。 – spons