Mengapa PHPMailer Melemparkan Ralat \'Peer Certificate Mismatch\' Di Bawah PHP 5.6?

Susan Sarandon
Lepaskan: 2024-10-27 06:23:29
asal
491 orang telah melayarinya

 Why Does PHPMailer Throw a

Amaran PHPMailer: Sijil Rakan Tidak Padan

Pengguna PHPMailer menghadapi ralat "Amaran PHP: stream_socket_enable_crypto(): Sijil rakan sebaya tidak sepadan dengan jangkaan" di bawah PHP 5.6 mungkin menghadapi masalah dengan pengesahan sijil.

Latar Belakang:

PHP 5.6 memperkenalkan pengesahan sijil yang lebih ketat untuk sambungan SSL. Akibatnya, jika konfigurasi SSL pelayan jauh tidak betul, PHPMailer akan gagal menyulitkan sambungan.

Simptom:

  • Ralat kegagalan sambungan : PHPMailer memaparkan "Tidak dapat menyambung ke hos SMTP."
  • Ralat pengelogan: Log menunjukkan amaran ketidakpadanan sijil: "Sijil rakan sebaya CN=*.mail.dreamhost.com ...' tidak sepadan dengan jangkaan CN=mx1.sub4.homie.mail.dreamhost.com...'".
  • Arahan QUIT serta-merta: PHPMailer boleh mengeluarkan arahan QUIT selepas mencuba STARTTLS, menunjukkan kegagalan penyulitan.

Penyelesaian:

Penyelesaian yang disyorkan ialah membetulkan tetapan sijil atau pengesahan pada pelayan jauh. Ini mungkin melibatkan penggantian sijil yang tidak sah dengan yang sah atau konfigurasi semula tetapan SSL.

Alternatif:

Jika penghantaran segera diperlukan dan ketidakpadanan sijil tidak kritikal, anda boleh melumpuhkan pengesahan sijil dalam PHPMailer menggunakan pilihan berikut:

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

Nota: Melumpuhkan pengesahan sijil tidak disyorkan kerana ia menjejaskan keselamatan dengan kemungkinan menerima sijil tidak sah.

Atas ialah kandungan terperinci Mengapa PHPMailer Melemparkan Ralat \'Peer Certificate Mismatch\' Di Bawah PHP 5.6?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!