从地址不适用于PHP邮件头

时间:2014-02-07 10:07:53

标签: php xampp sendmail email-headers

我正在使用PHP mail函数发送“无回复”邮件。问题是,当我使用以下“发件人”标题时,邮件已发送,但未在我的收件箱中收到:

  1. 发件人:发件人姓名<noreply@localhost.com>
  2. 来自:noreply@localhost.com
  3. 发件人:发件人姓名<test@localhost.com>
  4. 我没有实际的邮件地址noreply@localhost.com,但我有test@localhost.com 我认为根据the PHP documentation,所有这些都是正确的格式。

    当我尝试From: test@localhost.com时,它确实有效,我收到了邮件 我真的想使用1号格式Form: My Site Name <noreply@localhost.com>。它应该工作。有什么想法吗?

    我在PHP 5.2.6和MercuryMail中使用XAMPP 1.6.7

3 个答案:

答案 0 :(得分:1)

大多数电子邮件提供商拒绝通过私人邮件服务器发送的电子邮件和动态IP以防止垃圾邮件。您的提供商似乎就是其中之一。

您可以查看为您提供smtp中继服务器的提供程序,但可能无法更改“From”-adress。这取决于提供者。

另一种可能性是通过电子邮件提供商(例如gmail)创建帐户并使用电子邮件提供商提供的SMTP服务器。但是,你也无法改变“发件人”的地址。

答案 1 :(得分:0)

尝试将发件人名称放在引号中:“发件人名称”

答案 2 :(得分:0)

最后,我通过以下方式使用Sender Name <noreply@localhost.com>收到了邮件:

(1)我必须删除sendmail_pathphp.ini的评论才能使用 sendmail.exe

sendmail_path = "D:\xampp\sendmail\sendmail.exe -t"

(2)然后,我必须在我的本地MercuryMail服务器中创建一个帐户noreply@localhost.com

否则,邮件已发送,但未收到我的收件箱。