首頁 > 後端開發 > php教程 > 使用 PHPMailer 透過 Gmail 的 SMTP 伺服器傳送電子郵件時,為什麼會收到「需要 SMTP AUTH」錯誤?

使用 PHPMailer 透過 Gmail 的 SMTP 伺服器傳送電子郵件時,為什麼會收到「需要 SMTP AUTH」錯誤?

Patricia Arquette
發布: 2024-12-31 20:39:09
原創
292 人瀏覽過

Why Am I Getting the

無法透過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->SMTPSecure = 'ssl';以增強連線安全性。
  • 停用指定電子郵件帳號的兩步驟驗證。
  • 按照此處提供的說明允許安全性較低的應用程式存取您的 Google 帳戶:https://myaccount。 google.com/lesssecureapps

或者,您可以選擇修改$mail->SMTP 設定至:

$mail->SMTPSecure = 'tls';
登入後複製

請記住,某些SMTP 伺服器可能會阻礙連線或缺乏SSL/TLS 支援。建議與伺服器管理員驗證以確認相容性。

完成這些調整後,預計可以使用 PHP Mailer 透過 Gmail 的 SMTP 伺服器進行無縫電子郵件傳輸。

以上是使用 PHPMailer 透過 Gmail 的 SMTP 伺服器傳送電子郵件時,為什麼會收到「需要 SMTP AUTH」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板