在Windows 7上打开Ruby的SSL错误

我在Windows 7正常操作系统上运行。

Ruby,SSL和Windows不喜欢彼此,所以像这些简单的命令不适合我,这给我一个真正的头痛。 我尝试过获得RVM,更新我的环境variables,几乎所有的东西。

我不知道解决scheme是什么。 有没有解决scheme来安装Ruby 1.9.3的OpenSSL gem

require 'mechanize' agent = Mechanize.new page = agent.get('https://any-ssl-site-here.com') puts page 

因此,无论何时您尝试使用库来访问Windows上的https url,它们基本上都会失败,因为OpenSSL不知道在哪里查找ca_file

修复非常简单,获得一个CA Cert Bundle(我最喜欢的是cURL的CA Bundle )并指定要使用的库。

mechanize的情况下,他们使用#ca_file实例方法进行 。

换句话说,将您的代码更改为:

 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对类似问题的答案 。