PHP 使用 Headers 发送邮件到 Gmail

PHP Sending Mail with Headers to Gmail

如果我没有指定任何 headers,PHP 中的 mail() 函数在发送到 Gmail 时工作正常。但是,一旦我尝试添加 headers,函数仍然是 returns true,但我从未收到电子邮件。 Gmail 服务器似乎拒绝投递。

这些是我正在使用的headers:

$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'To: ' . $username . ' <' . $email . '>' . "\r\n";
$headers .= 'From: Blahblah <email@example.com>' . "\r\n";
mail($email, 'Subject', '<html><body>Body of message</body></html>', $headers);

我希望有人能指出我的缺陷?我直接从 PHP 手册中获取了大部分代码,因此可以理解我的困惑和沮丧。谢谢!

$Headers .= "From: $Yourname <$YourEmail>\r\n"; 

$Headers .= 'From: '.$Yourname.'<'.$Youremail.'>'."\r\n"; 

$Headers .= 'From: '.$Yourname.' <".$Youremail.">' . "\r\n";

试一试是否有效?

较大的电子邮件服务不会以这种方式递送从您自己的个人服务器发送的邮件。
由于垃圾邮件问题。所有大型邮件提供商在接受您的邮件之前都需要 SPF 记录、DKIM 和反向 DNS。

Some live/hotmail user's are not receiving html mail

就我个人而言,我更喜欢摆脱这种麻烦,并使用第 3 方邮件服务器来处理我发送给用户的所有外发邮件。[​​=11=]