首頁 >後端開發 >php教程 >為什麼我的 PHP 電子郵件從本機主機透過 Gmail SMTP 發送沒有到達?

為什麼我的 PHP 電子郵件從本機主機透過 Gmail SMTP 發送沒有到達?

Susan Sarandon
Susan Sarandon原創
2024-12-10 01:29:101029瀏覽

Why Aren't My PHP Emails Sent from Localhost via Gmail SMTP Arriving?

使用PHP 中的Gmail SMTP 服務器對來自本地主機的電子郵件傳送進行故障排除

問題:

儘管收到「成功」訊息使用PHP mail()函數從本機發送電子郵件後,目標收件者沒有收到email.

設定:

  • GMail SMTP 伺服器
  • php.ini 和sendmail.ini 都進行了對應配置

錯誤訊息:

13/10/02 13:36:41 :必須先發出 STARTTLS 指令。

解決方案:

至解決此問題並使用Gmail 從本地主機成功發送電子郵件,請按照以下步驟操作步驟:

  1. 安裝Fake Sendmail:

    • 如果尚未安裝「Fake Sendmail for Windows」實用程序,請下載並安裝已經。
  2. 設定php.ini:

    • 註解掉php.ini 設定的SMTP 和sendmail設定file.
    • 設定sendmail_path指向Fake Sendmail
  3. 設定sendmail.ini:

    • 指定Gmail SMTP伺服器資訊,包括連接埠(25) 、身分驗證憑證和強制發送者。
    • 確保使用者名稱與使用者名稱相同您用來存取您的 Gmail 帳戶。
  4. 產生應用程式專用密碼:

    • 如果您已啟用 2 -您的 Gmail帳戶的因素驗證,您將需要產生一個應用程式專用密碼用於發送電子郵件
  5. 修改sendmail.ini(可選):

    • 指定SMTP連接埠為587以使用TLS加密.
    • 取消註釋smtp_ssl 行並將其設定為tls.

實作這些變更後,您應該能夠使用 PHP 和 Gmail SMTP 伺服器成功從本機發送電子郵件。

以上是為什麼我的 PHP 電子郵件從本機主機透過 Gmail SMTP 發送沒有到達?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn