PHP Mail():设置返回路径导致邮件发送失败

Posted

技术标签:

【中文标题】PHP Mail():设置返回路径导致邮件发送失败【英文标题】:PHP Mail(): Setting Return Path Fails Mail Sending 【发布时间】:2011-06-19 23:14:00 【问题描述】:

我正在使用 phpmail() 函数发送电子邮件。但是,当我将 ReturnPath 标头设置为“-femail@domain.com”时,电子邮件会因返回路径第 5 个参数而失败,但在未使用时,会添加 anonymous@default.com 返回路径。这是一个错误吗?我们如何使用特定的返回路径。

亲切的问候,

胡拉姆

【问题讨论】:

一些 sendmail 配置不允许更改 returnPath ,你可能也想看看那里。 【参考方案1】:

假设您正在使用具有root 访问服务器的 Sendmail:

我已经在 Sendmail 基本上处于出厂配置的服务器上测试了结果:

mail($email, $subject, $message, $headers, '-freturn@address');

使用 -f 时,Sendmail 必须知道您是受信任的用户。您必须将服务器用户添加到/etc/mail/trusted-users。例如,如果 Web 服务器用户是 apachewww-data,则必须将其放入 trusted-users 文件中。

完成此操作后,您可能必须启用该功能。编辑/etc/mail/submit.mc 并添加以下行正确

FEATURE('use_ct_file')dnl

一旦你完成了service sendmail restart 应该做的工作。

【讨论】:

以上是关于PHP Mail():设置返回路径导致邮件发送失败的主要内容,如果未能解决你的问题,请参考以下文章

PHP mail() 函数返回 true,但不发送邮件

如果从 php mail() 函数发送的电子邮件返回,它在 linux 中的位置?

如何使用php的mail函数

SMTP 连接()失败。发送认证邮件时

php 程序发送邮件失败

解决spring boot JavaMailSender部分收件人错误导致发送失败的问题