無法透過PHPMailer 使用Gmail SMTP 伺服器發送電子郵件:「在連接埠587 上提交郵件需要SMTP AUTH」
在願望中通過PHP Mailer 與Gmail 的SMTP(簡單郵件傳輸協定)伺服器傳輸電子郵件時,可能會遇到錯誤訊息「SMTP在連接埠587 上提交訊息需要 AUTH。
要解決此問題,請考慮合併以下程式碼修改:
$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"; }
特別要注意這些關鍵調整:
或者,您可以選擇修改$mail->SMTP 設定至:
$mail->SMTPSecure = 'tls';
請記住,某些SMTP 伺服器可能會阻礙連線或缺乏SSL/TLS 支援。建議與伺服器管理員驗證以確認相容性。
完成這些調整後,預計可以使用 PHP Mailer 透過 Gmail 的 SMTP 伺服器進行無縫電子郵件傳輸。
以上是使用 PHPMailer 透過 Gmail 的 SMTP 伺服器傳送電子郵件時,為什麼會收到「需要 SMTP AUTH」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!