1

これに頭をぶつけていて、他の誰かに対して考えを跳ね返す必要があります。私はローカルで取得し続けます:

OpenSSL::SSL::SSLError: SSL_connect returned=1 errno=0 state=error: certificate verify failed

私はherokuに乗ります:

openssl::ssl::sslerror: ssl_connect returned=1 errno=0 state=sslv3 read server certificate b: certificate verify failed

私の談話インスタンスには DNSimple からの SSL 証明書があるため、すべて完全に機能しています。heroku では、私は Rails API しか持っていないので、heroku が既に提供している SSL 証明書を取得せず、heroku インスタンスからの URL を使用することにしました。

これで、Advanced Rest Client (Chrome 拡張機能) を使用して、問題なく談話インスタンスにリクエストを送信できるようになりました。discourse_api gem で使用しているコードを次に示します。

discourse_client = DiscourseApi::Client.new('https://community.desta.co')
discourse_client.api_key = ENV['COMMUNITY_API_KEY']
# path to heroku cert, which I verified exists through `heroku run bash`
discourse_client.ssl(ca_file: '/usr/lib/ssl/certs/ca-certificates.crt')
discourse_client.api_username = 'system'

多分私は証明書を誤解していますか?助けてください!ありがとう

4

1 に答える 1

0

この問題を抱えている可能性のある人のために、私はそれを修正することができました. https://www.ssllabs.com/ssltest/analyze.htmlでSSL 構成をテストしたところ、プライマリ証明書と一緒に中間証明書がないことに気付きました:(。

于 2015-12-12T18:09:00.683 に答える