無法透過PHPMailer 使用Gmail SMTP 伺服器傳送電子郵件:連接埠587 需要SMTP 驗證
嘗試透過GmailTP 傳送電子郵件時使用電子郵件時使用電子郵件時使用電子郵件PHPMailer 的伺服器,但遇到錯誤,指出「在連接埠587 上提交訊息需要SMTP AUTH”,可以採取以下幾種措施
提供的 PHP Mailer 程式碼範例應調整如下:
$mail = new PHPMailer(); $mail->IsSMTP(); $mail->SMTPDebug = 1; // Enables debugging $mail->SMTPAuth = true; $mail->SMTPSecure = 'ssl'; // Secure transfer using SSL $mail->Host = "smtp.gmail.com"; $mail->Port = 465; // SMTP port $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"; }
必須確保使用 $mail-> 啟用 SSL SMTPSecure = 'ssl'。如果這不能解決問題,請考慮使用 $mail->SMTPSecure = 'tls' 更改為 TLS。
還必須驗證用於發送的帳戶是否已停用了兩步驟驗證電子郵件,因為它可能會幹擾該過程。
最後,請務必注意,某些 SMTP 伺服器不支援 SSL 或 TLS 連接,可能需要替代方案配置。
以上是當我使用 PHPMailer 透過 Gmail 的 SMTP 伺服器發送電子郵件時,為什麼會收到「需要 SMTP AUTH」的訊息?的詳細內容。更多資訊請關注PHP中文網其他相關文章!