PHP - 不发送带有标题信息的电子邮件

时间:2013-06-16 15:30:00

标签: php email header

我在添加标题信息时发送电子邮件时遇到问题。 但是,当我只删除头参数时,它的工作原理。怎么了?这是代码吗?或者我需要在Web服务器管理面板上更改一些设置来说“Allow-Headers”或其他什么? 我试图发送到hotmail,以防在确定问题时有任何相关性。 任何帮助将不胜感激。感谢。

以下不发送电子邮件:

<?php

    $to      = 'iputmyrealemailhere@hotmail.com';
    $subject = 'the subject';
    $message = 'hello';
    $headers = 'From: webmaster@example.com';

    mail($to, $subject, $message, $headers);

?>

以下发送电子邮件:

<?php

    $to = 'iputmyrealemailhere@hotmail.com';
    $subject = 'the subject';
    $message = 'hello';
    $headers = 'From: webmaster@example.com';

    mail($to, $subject, $message);

?>

2 个答案:

答案 0 :(得分:1)

我在我的php邮件功能中使用这些标题,效果很好。 注意:我还使用第三方邮件路由服务,以避免将我的邮件标记为来自垃圾邮件IP。您可能也想查看它。

$headers = 'From: '.$from.'@foo.net' . "\r\n" .
'Reply-To: '.$from.'@foo.net' . "\r\n" .
'X-Mailer: PHP/' . phpversion() . "\r\n" .
'MIME-Version: 1.0' . "\r\n" .
'Content-type: text/html; charset=iso-8859-1' . "\r\n";

我还使用可选的第五个参数mail()来设置包络地址,例如:

$parameters = '-f '.$from.'@foo.net';

所以最后的电话是:

mail($to, $subject, $message, $headers, $parameters);

答案 1 :(得分:0)

你可以从标题列表中删除“FROM:”..它会在某些主机中阻止它。但真正的问题是如何将发送的电子邮件地址更改为我想要的特定电子邮件