我在Windows 7普通操作系统上运行。
Ruby,SSL和Windows彼此不喜欢,所以这些简单的命令对我不起作用,它让我真正头疼。我尝试过RVM,更新我的环境变量,几乎所有东西。
我不知道解决方案是什么。有没有为Ruby 1.9.3安装OpenSSL gem的解决方案?
require 'mechanize'
agent = Mechanize.new
page = agent.get('https://any-ssl-site-here.com')
puts page
答案 0 :(得分:0)
因此,每当您尝试使用库访问Windows上的https
网址时,它们基本上都会失败,因为OpenSSL不知道在哪里查找ca_file
。
修复非常简单,获得一个CA Cert Bundle(我最喜欢的是cURL's CA Bundle)并指出你要使用的任何库。
如果是mechanize
,他们会使用#ca_file
instance method。
换句话说,将您的代码更改为:
require 'mechanize'
agent = Mechanize.new
agent.ca_file = "path/to/ca_bundle.crt"
page = agent.get('https://any-ssl-site-here.com')
puts page
另外,请查看Luis Lavena's execellent answer to a similar question。