2011-11-30 84 views
3

最近,我的同事之一开始有问题发送来自我们开发网站的不同主机的邮件。然后,他想起了很久以前,使用第五个参数,他可以在邮件传递“-f电子邮件”()调用,如:为什么我必须在邮件()函数中使用“-f [email protected]”

mail('[email protected]', 'test', 'test', '', '-f [email protected]'); 

我真的不知道他为什么要这么做当我不使用这个标志时,我的邮件的原因是什么不会发生。

请注意,同样的事情再次发生在我正在建设的开发服务器上,如果我没有把第五个参数,邮件在太空中丢失,并从未发送。


UPDATE

如何管理配置后缀/ PHP来阻止我不必使用此配置。我一直在编程PHP 11年,我只是最近才开始这样做。必须有一种方法来防止这种情况发生......

+0

在'mail()'的'additional_headers'参数中,你是否指定了From头? php.ini中的'sendmail_path'条目显示什么?你可以检查你的Postfix'main.cf'文件,并查找像'smtp_generic_maps,canonical_maps或alias_maps'的任何条目,看看是否有任何映射文件设置?还有许多其他控件可以从地址中重写,但这些控件很常见。 – drew010

回答

2

好像你必须是发送服务器上的可信用户才能发送邮件。我在研究中读到的,-f只是确认你的用户是一个值得信赖的用户。

http://www.php.net/manual/en/function.mail.php研究-f在这个页面上,你落在它上面。

什么让你的邮件不出去将是服务器,不承认信任的用户,添加X警告标题。

相关问题