Tidak Dapat Menghantar E-mel Menggunakan Pelayan SMTP Gmail Melalui PHPMailer: "SMTP AUTH Diperlukan untuk Penyerahan Mesej di Port 587"
Dalam keinginan untuk menghantar e-mel dengan pelayan SMTP (Simple Mail Transfer Protocol) Gmail melalui PHP Mailer, seseorang mungkin menghadapi mesej ralat "SMTP AUTH diperlukan untuk penyerahan mesej pada port 587." Halangan ini menandakan keperluan untuk langkah keselamatan yang dipertingkatkan.
Untuk menyelesaikan isu ini, pertimbangkan untuk memasukkan pengubahsuaian kod berikut:
$mail = new PHPMailer(); $mail->IsSMTP(); $mail->SMTPDebug = 1; $mail->SMTPAuth = true; $mail->SMTPSecure = 'ssl'; $mail->Host = "smtp.gmail.com"; $mail->Port = 465; $mail->IsHTML(true); $mail->Username = "[email protected]"; $mail->Password = "password"; $mail->SetFrom("[email protected]"); $mail->Subject = "Test"; $mail->Body = "hello"; $mail->AddAddress("[email protected]"); if (!$mail->Send()) { echo "Mailer Error: " . $mail->ErrorInfo; } else { echo "Message has been sent"; }
Khususnya, beri perhatian kepada pelarasan penting ini:
Sebagai alternatif, anda mungkin memilih untuk mengubah suai tetapan $mail->SMTP kepada:
$mail->SMTPSecure = 'tls';
Ingat bahawa pelayan SMTP tertentu mungkin menghalang sambungan atau kekurangan sokongan SSL/TLS. Adalah dinasihatkan untuk mengesahkan dengan pentadbir pelayan untuk mengesahkan keserasian.
Dengan pelarasan ini dilaksanakan, jangkakan penghantaran e-mel yang lancar melalui pelayan SMTP Gmail menggunakan PHP Mailer.
Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat 'SMTP AUTH Diperlukan' Semasa Menghantar E-mel melalui Pelayan SMTP Gmail dengan PHPMailer?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!