2017-10-31 29 views
-1

一週間前、私はPHPMailerでWAMPの一部のコンポーネントをテストしていましたが、すべて正常に動作しました。翌日、それはちょうど仕事を止めました。 WAMPの設定が変更されていません。私は電子メールを送信しようとすると、SMTPDebugを使用すると、これは次のエラーです:WAMP/XAMPPのSSLエラー:stream_socket_enable_crypto():SSL操作が失敗しました

Connection failed. Error #2: stream_socket_enable_crypto(): SSL operation failed with code 1. OpenSSL Error messages:error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed [C:...\SMTP.php line 404]

は私がWAMPとXAMPPのx86バージョンを使用して他のテストをしました(私は現在、x64のWAMPを使用)が、成功せず、私は同じエラーを取得します。

すべてのテストは、「安全性の低いアプリケーションを許可する」が有効になっています。

ドキュメントで簡単に検索したところ、問題はSSL証明書の検証によるものであることがわかりました。回避策として、次のコードを使用してこのチェックをスキップできます。

$mail->SMTPOptions = array(
    'ssl' => array(
     'verify_peer' => false, 
     'verify_peer_name' => false, 
     'allow_self_signed' => true 
    ) 
); 

しかし、これは回避策です。私は問題の原因がどこにあるのか知りたかったのですが、なぜそれが機能しなくなったのか分かりません。私はすでにWAMP/XAMPPフォルダの証明書を置き換えようとしましたが、成功しませんでした。また、広範な研究を行ったが、結果は得られなかった。回避策なしで証明書検証の問題をどのように解決することができますか?

答えて

1

が重複する可能性:Warning: stream_socket_enable_crypto(): SSL operation failed with code 1

このエラーが出てくる可能コンフィグがたくさんあります。システムの設定が正しく設定されていないことがよくあります。これを正しく実行するには、次のようにします。1 OPENSSL用のcacert.pemファイルがあるかどうかをチェックします。そうでない場合は、phpのバージョンに従ってcacert.pemから適切なバージョンをダウンロードし、php.iniファイルを "2-"

2このファイルがある場合は、php.iniファイルを参照して、そのファイルが設定されているかどうかを確認する必要があります。そうするために:あなたはそれがすべてのcacert.pemのファイルを使用して行われているよりも、それを見つけた場合、ルックアップを行

openssl.cafile ="example address..\cacert.pem" 

のためにあなたが特定のアドレスを持つ行を見つけた場合、そのアドレスにcacert.pemのファイルを探します。それ以外の場合は、正しいアドレスを使用する必要があります。

願っています。幸運です!

+0

ありがとうございます! –

関連する問題