PHP mail() 退回

PHP mail() 退回

我在 Dreamhost 上使用 PHP5 下的 mail() 发送电子邮件(我相信它使用本地 sendmail 或其他 MTA)... 退回的邮件被发回给发送 shell 用户,而不是发件人:/回复至:标头中的用户。有什么想法吗?

答案1

您需要在 mail() 调用中包含 additional_parameters。如果正在使用 sendmail,则将其指定为 $additional_parameters = "-fwhateveryou@used_in.theheaders"
例如

$附加参数 = "[电子邮件保护]

邮件($send_to,$message_subject,$mailBody,$mailHeaders,$additional_parameters);

这对我来说可以让弹回回到正确的位置

答案2

全部捕捉

如果邮件发送给域中不存在的用户,则它可能会被发送到 MTA 的管理员帐户。

当垃圾邮件发送者试图向我域名中不存在的帐户发送电子邮件时,这种情况曾经发生在我的 php 联系表单上。该邮件将被传递到管理员 MTA 帐户,而不是路由到不存在的用户。

答案3

我不确定 sendmail 上是否存在这种情况,但在 Exim 中,您需要授权 shell 用户成为受信任的用户,以允许它发送正确的 From: 标头。

如果您无权更改 sendmail 配置,并且您确定您在 mail() 调用中发送了格式正确的 From: 标头,则您需要联系 Dreamhost 的支持。

相关内容