Php 我为什么要用“我的”呢-Ffrom@email.com&引用;在mail()函数中

Php 我为什么要用“我的”呢-Ffrom@email.com&引用;在mail()函数中,php,email,postfix-mta,Php,Email,Postfix Mta,最近,我的一个同事开始在从我们开发站点的不同主机发送邮件时遇到问题。然后他想起很久以前,使用第5个参数,他可以在mail()调用中传递“-f email”,例如: mail('mdumoulin@mydomain.com', 'test', 'test', '', '-f mdumoulin@mydomain.com'); 我真的很想知道为什么他要这么做,我不使用这个标志的时候,我的邮件不出去的原因是什么 请注意,我正在构建的开发服务器上又发生了同样的事情,如果我没有输入第5个参数,邮件将在空

最近,我的一个同事开始在从我们开发站点的不同主机发送邮件时遇到问题。然后他想起很久以前,使用第5个参数,他可以在mail()调用中传递“-f email”,例如:

mail('mdumoulin@mydomain.com', 'test', 'test', '', '-f mdumoulin@mydomain.com');
我真的很想知道为什么他要这么做,我不使用这个标志的时候,我的邮件不出去的原因是什么

请注意,我正在构建的开发服务器上又发生了同样的事情,如果我没有输入第5个参数,邮件将在空间中丢失,并且永远不会发送


更新


如何配置postfix/php以避免使用此配置。我编写PHP已经11年了,直到最近才开始这么做。必须有办法防止这种情况发生…

似乎您必须是发送服务器上的受信任用户才能从中发送邮件。根据我在研究中读到的内容,-f只是确认您的用户是一个值得信任的用户

在这一页中,你正好落在上面


使您的邮件无法发出的原因是服务器无法识别受信任的用户,因此添加了X-Warning标头

邮件(
)的
附加\u标题
参数中,是否从
标题指定
?php.ini中的
sendmail\u路径
项显示了什么?你能检查你的Postfix
main.cf
文件并查找诸如
smtp\u generic\u映射、canonical\u映射或alias\u映射之类的条目吗
,看看是否设置了映射文件?还有许多其他控件可以从地址重写,但这些控件很常见。