好的,我在互联网上搜索了答案 - 遗憾地无济于事。我正在尝试使用PHP mail()函数发送邮件,以便成员可以按照链接进行注册。它适用于Gmail,Yahoo!,但不适用于Hotmail。请帮帮我!!!
<?php
$headers .= 'To: <kenny.XXX@hotmail.com>' . "\r\n";
$headers .= 'From: <XXX@srv30.000webhost.com>' . "\r\n";
$headers .= 'Cc: XXX@srv30.000webhost.com' . "\r\n";
$headers .= 'Bcc: XXX@srv30.000webhost.com' . "\r\n";
$text="hello";
$text = str_replace("\n.", "\n..", $text);
mail('Kenny Worden:<kenny.XXX@hotmail.com>','Leos Realm account verification!',$text,$headers);
?>
如果这有助于任何人:
SMTP:localhost(srv30.000webhost.com)
SMTP PORT:25
答案 0 :(得分:2)
您的代码似乎很好。我的猜测是你的服务器端有问题,检查邮件传递日志或让服务器管理员为你查看它们。可能是路由/ DNS问题。
编辑: 我只是在我的服务器上尝试了这个脚本,它运行良好。立即收到我的Hotmail地址的电子邮件。
答案 1 :(得分:2)
您缺少字符串"-f <from address>"
作为第五个参数。
PHP Manual指出您需要提供此信息,以便MTA将在信封上发送正确的“发件人”地址。在标题中设置它是不够的。这种无聊是我不推荐mail()
并将人们指向php-mailer
或类似的原因。
(“信封”是指MTA与另一个MTA进行的对话,以便发送电子邮件。)
答案 2 :(得分:0)
代码很好, 你做的任何使它看起来像垃圾邮件将阻止它从hotmail 尝试为您的域创建spf记录,甚至签名
检查您的邮件服务器是否未列入黑名单,这可能会导致问题 http://www.mxtoolbox.com/
正如@staticsan推荐的php-mailer或http://swiftmailer.org/是你可以尝试使用的其他选项,可能有帮助