ホームページ >バックエンド開発 >PHPチュートリアル >PHP での「SSL3_GET_SERVER_CERTIFICATE: 証明書の検証に失敗しました」エラーを解決する方法
Web 開発の領域では、安全な通信に HTTPS を利用することが最も重要です。ただし、場合によっては、HTTPS リクエスト中に、悪名高い「SSL3_GET_SERVER_CERTIFICATE: 証明書の検証に失敗しました。CA は正常です。」などのエラーが発生することがあります。
エラーのナビゲート
この場合エラーが発生する場合、これは通常、予期されたサーバー証明書とサーバーによって提示された証明書との間に不一致があることを示します。 CA (認証局) が有効であると見なされているにもかかわらず、証明書の検証に関する問題が解決されません。
PHP 構成による解決
PHP アプリケーションの場合、このエラーに対する簡単な解決策はあります。 php.ini内でcurl.cainfo設定を構成する際。この設定では、信頼されたルート証明書を含むファイルへのパスを指定します。デフォルトでは、PHP は独自のバンドル証明書を使用しますが、定期的に更新されない可能性があります。
エラーを解決するには:
curl.cainfo = /path/to/cacert.pem
個別のリクエスト調整
PHP 構成の調整が不可能な場合は、CURLOPT_CAINFO オプションを設定することで、カスタム CA 証明書を使用するように特定の cURL リクエストを構成できます。
curl_setopt($ch, CURLOPT_CAINFO, '/path/to/cacert.pem');
その他の考慮事項
サーバー証明書が HTTPS によって提示されていることを確認します。エンドポイントは有効であり、信頼された CA によって署名されています。問題が解決しない場合は、ファイアウォール設定を確認するか、サーバー側の証明書を検証することを検討してください。
結論
次の手順に従うことで、「SSL3_GET_SERVER_CERTIFICATE: 証明書の検証」を効果的に解決できます。 「失敗しました、CA は OK です」というエラーが発生し、PHP アプリケーションでの HTTPS 通信がスムーズに行われるようにします。
以上がPHP での「SSL3_GET_SERVER_CERTIFICATE: 証明書の検証に失敗しました」エラーを解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。