修复 Ruby 的 SSL 问题

Ruby 有时候会遇到这个问题:

 RestClient::SSLCertificateNotVerified
 SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed:

这个问题是因为 cert.pem 过时了。那么我们更新一下。

用这个代码查看这个文件的路径在哪里。

ruby -r openssl -e 'puts OpenSSL::X509::DEFAULT_CERT_FILE'

在 OSX 下,是 /usr/local/etc/openssl/cert.pem。在 Fedora 下是 /etc/pki/tls/cert.pem。

下面以 OSX 为例:

wget http://curl.haxx.se/ca/cacert.pem
mv cacert.pem /usr/local/etc/openssl/cert.pem