SMTP Connect() Gagal: Menyelesaikan Masalah Tamat Masa Sambungan
Apabila cuba menghantar e-mel menggunakan SMTP, anda mungkin menghadapi ralat: "SMTP - > RALAT: Gagal menyambung ke pelayan: Sambungan tamat masa (110)... Mesej tidak dihantar: SMTP Connect() gagal." Isu ini selalunya menunjukkan masalah mewujudkan sambungan ke pelayan SMTP.
Punca Potensi:
Penyelesaian:
Semak tetapan SMTP yang dinyatakan dalam kod anda (cth., Hos, Port, Nama Pengguna dan Kata Laluan) untuk memastikan ia sepadan dengan keperluan pelayan SMTP yang anda gunakan.
Selain itu, komen atau alih keluar baris $ mel->IsSMTP(); kerana ia tidak perlu semasa menggunakan konfigurasi SMTP.
<code class="php">require 'class.phpmailer.php'; require 'class.smtp.php'; $mail = new PHPMailer(); $mail->SMTPDebug = 2; // Enable debugging $mail->Mailer = "smtp"; $mail->Host = "ssl://smtp.gmail.com"; $mail->Port = 587; $mail->SMTPAuth = true; $mail->Username = "[email protected]"; $mail->Password = "mypasswword"; $mail->Priority = 1; $mail->AddAddress("[email protected]", "Name"); $mail->SetFrom($visitor_email, $name); $mail->AddReplyTo($visitor_email, $name); $mail->Subject = "Message from Contact form"; $mail->Body = $user_message; $mail->WordWrap = 50; if (!$mail->Send()) { echo 'Message was not sent.'; echo 'Mailer error: ' . $mail->ErrorInfo; } else { echo 'Message has been sent.'; }</code>
Jika masalah berterusan, semak tetapan tembok api atau rangkaian anda untuk memastikan port SMTP (biasanya 587 atau 465) tidak disekat. Anda juga boleh cuba menggunakan pelayan SMTP yang berbeza untuk mengetepikan isu bahagian pelayan.
Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Masa Tamat SMTP Connect()?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!