Ruby Windows XP:如何更改 SSL 证书的目录

Ruby on Windows XP: How to change directory of SSL certificates

我在 Windows XP 上安装了 Ruby 2.0.0,运行 这个脚本:

# testSSL.rb
require 'open-uri'
open('https://www.google.com')

我在第 921 行 http.rb 上收到 "certificate verify failed" 错误。 进一步测试,似乎 Ruby 在此处查找 SSL 证书文件:

C:/Users/Justin/Projects/knap-build/var/knapsack/software/x86-windows/openssl/1.0.1l/ssl

如何告诉 Ruby 在安装这些文件的位置查找这些文件:

C:/Ruby200/lib/ruby/2.0.0/rubygems/ssl_certs.

任何帮助将不胜感激!

像这样,但是你会收到警告,因为你覆盖了一个常量

OpenSSL::X509::DEFAULT_CERT_FILE = 'C:/Users/Gebruiker/cert.pem'
puts OpenSSL::X509::DEFAULT_CERT_FILE

或者像这样

ENV['SSL_CERT_FILE']="C:/users/username/cert.pem" #make sure a correct certificate is there

在这两种情况下都跟着

http.use_ssl = true

您可以从 http://curl.haxx.se/ca/cacert.pem 下载有效的 .pem 文件。将此文件保存到路径中使用扩展名 .pem 并使用您在脚本中引用的名称。