我在Linux上使用PHP和Apache,使用Sendmail.我使用PHP mail
函数.该邮件被发送,但信封中Apache_user@localhostname
的MAIL FROM
(例如nobody@conniptin.internal)和一些远程邮件服务器拒绝这一点,因为域不存在(显然).使用mail
,我可以强迫它改变信封MAIL FROM
吗?
编辑:如果我在mail
()函数的第四个字段中添加一个标题,它会更改From
邮件正文标题中的字段,并且不会更改信封MAIL FROM
.
我可以通过生成sendmail sendmail -t -odb -oi -frealname@realhost
并将电子邮件内容传送给它来强制它.这是一种更好的方法吗?
是否有更好,更简单,更适合PHP的方法?
编辑:底线是我应该有RTM.谢谢你的回答,第五个参数有效,一切都很好.
mail()有第4和第5个参数(可选).第五个参数是应该作为选项直接传递给sendmail的内容.我使用以下内容:
mail('to@blah.com','subject!','body!','From: from@blah.com','-f from@blah.com');