解决 PHP 邮件中的“From”标头问题
在网站开发中,在注册时向用户发送电子邮件是一项常见任务。但是,遇到“From”标头问题可能会令人沮丧。遇到此类问题的开发人员寻求在注册时向用户发送电子邮件的指导,并展示了他的 PHP 代码:
$to = "[email protected]"; $subject = "Test mail"; $message = "Hello! \nThis is a simple email message."; $headers = "From: [email protected]"; $headers .= "\r\nReply-To: [email protected]"; $headers .= "\r\nX-Mailer: PHP/".phpversion(); mail($to,$subject,$message,$headers); echo "Mail Sent.";
但是,当发送的电子邮件将“发件人”标头显示为 [email protected] 时,问题就出现了,而“Reply-To”标头已按指定正确设置。问题的症结在于托管该网站的服务器的主机名,即box123.bluehost.com。
经调查,发现开发者试图使用 Gmail 地址作为“发件人” “ 价值。不幸的是,这种方法不太可能成功。正如解决方案提供商所解释的:
“这是行不通的,ISP 正确地覆盖了它。如果您想将回复重定向到外发消息,请使用回复。”
为了纠正此问题,建议开发人员使用“Reply-To”标头来重定向回复。此外,还提供了解决有效地址问题的解决方法:
mail($to,$subject,$message,$headers,"-f [email protected]");
通过向 mail() 命令添加第五个参数,开发人员可以解决“From”标头问题并确保电子邮件发送成功。
以上是为什么我的 PHP 电子邮件的'发件人”标头不正确,如何修复?的详细内容。更多信息请关注PHP中文网其他相关文章!