修復從PHP 透過GMail SMTP 伺服器發送電子郵件時的驗證失敗
嘗試使用以下方式發送電子郵件時,您可能會遇到以下驗證錯誤您的PHP 腳本:
authentication failure [SMTP: SMTP server does no support authentication (code: 250, response: mx.google.com at your service, [98.117.99.235] SIZE 35651584 8BITMIME STARTTLS ENHANCEDSTATUSCODES PIPELINING)]
當指定的SMTP配置不正確或不完整時,通常會發生此錯誤。若要解決此問題,請驗證您的設定並將其調整為以下內容:
require_once "Mail.php"; $from = "Sandra Sender <[email protected]>"; $to = "Ramona Recipient <[email protected]>"; $subject = "Hi!"; $body = "Hi,\n\nHow are you?"; $host = "ssl://smtp.gmail.com"; $port = "465"; $username = "[email protected]"; $password = "testtest"; $headers = array ('From' => $from, 'To' => $to, 'Subject' => $subject); $smtp = Mail::factory('smtp', array ('host' => $host, 'port' => $port, 'auth' => true, 'username' => $username, 'password' => $password)); $mail = $smtp->send($to, $headers, $body); if (PEAR::isError($mail)) { echo("<p>" . $mail->getMessage() . "</p>"); } else { echo("<p>Message successfully sent!</p>"); }
透過在主機設定中指定 ssl://,您可以建立與 GMail SMTP 伺服器的安全 SSL 連線。此外,您必須指定正確的 SSL 端口,即 465。
確保您的使用者名稱和密碼正確。這些應該是您的 GMail 憑證。
調整設定後,您的 PHP 腳本應該能夠透過 GMail SMTP 伺服器傳送電子郵件,而不會遇到驗證失敗錯誤。
以上是為什麼我的 PHP 電子郵件發送到 Gmail 時身份驗證失敗,如何修復?的詳細內容。更多資訊請關注PHP中文網其他相關文章!