使っていますAuthlogic-コネクトサードパーティのログインの場合。適切な移行を実行すると、Twitter/Google/Yahoo のログインは正常に機能するようです。ただし、Facebook のログインでは例外が発生します。
SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed
開発ログには
OpenSSL::SSL::SSLError (SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed):
app/controllers/users_controller.rb:37:in `update'
提案してください..
ベストアンサー1
Rails 3のJQueryジェネレーターを使用しようとしたときにも同様の問題に遭遇しました。
私は次のように解決しました:
CURL 証明機関 (CA) バンドルを取得します。これは次のように実行できます。
sudo port install curl-ca-bundle
[MacPortsを使用している場合]- または直接下に引っ張るだけです
wget http://curl.haxx.se/ca/cacert.pem
SSL 証明書を検証しようとしている Ruby コードを実行します:
SSL_CERT_FILE=/opt/local/etc/certs/cacert.pem rails generate jquery:install
。この場合、これをサーバーが取得するどこかの環境変数として設定するか、ENV['SSL_CERT_FILE'] = /path/to/your/new/cacert.pem
environment.rb ファイルに次のようなものを追加します。
CAファイルをOSにインストールすることもできます(私は試していませんが)。長い手順があります。ここ-- これも同じように動作するはずですが、個人的には試していません。
基本的に、発生している問題は、一部の Web サービスが OpenSSL が検証できない CA に対して署名された証明書で応答していることです。