解決PHP 郵件中的「From」標頭問題
使用PHP 的郵件功能發送電子郵件時,您可能會遇到“From”標頭問題' 標頭的顯示與指定值不同。讓我們深入研究此問題的潛在原因和解決方案。
在提供的程式碼中,您已將“From”標頭指定為“[email protected]”,但電子郵件到達時的“From”標頭為“[電子郵件受保護]”。這種差異可能是由於伺服器配置或託管提供者施加的限製造成的。
Reply-To 標頭
「Reply-To」標頭用於指定應將回覆發送到的電子郵件地址。它通常與「寄件者」標頭不同,「寄件者」標頭指示原始電子郵件的寄件者。在您的情況下,您已將“回覆”設定為“[電子郵件受保護]”,並且該值正確顯示在收到的電子郵件中。
Gmail 限制
需要考慮的一個重要因素是,包括Gmail 在內的許多ISP 都限制使用外部電子郵件地址作為「寄件者」標頭。使用 Gmail 時,「寄件者」標頭必須與相同網域所託管的電子郵件地址相符。此安全措施可防止垃圾郵件發送者欺騙電子郵件地址。因此,在使用 Gmail 的 SMTP 伺服器傳送電子郵件時,您無法指定「[email protected]」等外部位址作為「寄件者」標頭。
有效寄件者地址的解決方法
如果您使用有效的電子郵件地址作為「From」標頭,並且伺服器仍然覆蓋它,您可以嘗試在mail() 函數中新增第五個參數:
mail($to, $subject, $message, $headers, "-f [email protected]");
此參數指定信封寄件人,某些ISP使用它來確定“發件人”標頭。透過將此參數設定為所需的「寄件者」位址,您通常可以覆蓋伺服器的預設值。
其他注意事項
以上是為什麼我的 PHP 電子郵件的「寄件者」標頭不正確?的詳細內容。更多資訊請關注PHP中文網其他相關文章!