Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mengapa PHPMailer Menjana Amaran \"stream_socket_enable_crypto(): Peer Certificate Mismatch\" dan Bagaimana Saya Boleh Membetulkannya?

Mengapa PHPMailer Menjana Amaran \"stream_socket_enable_crypto(): Peer Certificate Mismatch\" dan Bagaimana Saya Boleh Membetulkannya?

Barbara Streisand
Barbara Streisandasal
2024-11-02 11:51:03659semak imbas

Why Does PHPMailer Generate a

PHPMailer Menjana Amaran: stream_socket_enable_crypto(): Peer Certificate Mismatch

Langkah keselamatan dipertingkat yang dilaksanakan dalam PHP 5.6 telah memberi kesan kepada penggunaan PHPMailer. Apabila cuba menghantar mesej ke domain tertentu, seperti yang dihoskan oleh Dreamhost, pengguna mungkin menghadapi ralat: "Tidak dapat menyambung ke hos SMTP."

Siasatan lanjut mendedahkan isu asas dengan pengesahan sijil. Log PHPMailer "Amaran PHP: stream_socket_enable_crypto(): Sijil rakan sebaya CN=*.mail.dreamhost.com' tidak sepadan dengan jangkaan CN=mx1.sub4.homie.mail.dreamhost.com'."

Untuk menyelesaikannya isu ini, adalah penting untuk memahami bahawa pengesahan sijil bukan pilihan dan mengabaikannya menjejaskan keselamatan. Penyelesaian yang betul, seperti yang dinyatakan dalam dokumentasi PHPMailer, adalah menggantikan sijil yang tidak sah atau salah konfigurasi dengan yang sah.

Jika pengesahan sijil kekal tidak boleh dirunding tetapi penghantaran mesej masih diperlukan, adalah mungkin untuk memintas pengesahan buat sementara waktu. Ini boleh dicapai dengan menetapkan SMTPOptions berikut:

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

Walau bagaimanapun, pendekatan ini harus digunakan dengan berhati-hati dan hanya disyorkan sebagai langkah sementara sehingga konfigurasi sijil yang betul dapat ditangani.

Atas ialah kandungan terperinci Mengapa PHPMailer Menjana Amaran \"stream_socket_enable_crypto(): Peer Certificate Mismatch\" dan Bagaimana Saya Boleh Membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn