我一直试图让PEAR :: mail成功地向hotmail用户发送电子邮件而不被标记为垃圾邮件并最终进入垃圾邮件文件夹,我只使用hotmail与yahoo / gmail没有问题.
原文链接:https://www.f2er.com/php/134739.html谷歌建议这是hotmail的常见问题,可能的原因可能包括
>服务器主IP的反向DNS不正确
>缺少SenderId / SPF记录
>被列入黑名单
为了测试这个理论,我设置了outlook以通过PEAR :: mail使用的相同地址发送电子邮件并发送快速测试 – 它直接发送到我的收件箱
所以我将PEAR :: mail发送的电子邮件中的标题与Outlook发送的标题进行了比较,并且只有一些差异 – 我只列出了差异以节省空间(以及人们的眼睛)
X-PHP-Script: www.example.com/register.PHP for [users ip address]
Outlook标头(不在PEAR ::邮件头中)
X-Mailer: Microsoft Office Outlook 11 Thread-Index: Ack6CWsqlgV8s6+6SWyifka2NNpB7g== X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3350
我能看到的唯一其他差异是
> From:和To:标题的顺序相反
>并在标题的Received:部分中
外表
Received: from myhomehostname.com ([ip address] helo=simber) by mywebhostname.com with local (Exim 4.67)
PEAR ::邮件
Received: from apache by mywebhostname.com with local (Exim 4.67)
标题中的这些小差异可能是原因还是我在错误的地方?我知道这可能有问题因此为什么我选择使用PEAR :: mail类而不是自己滚动但现在我真的不知道该去哪里,任何帮助将不胜感激.
更新:根据changelog的建议,我已经尝试将MS标头添加到PEAR :: mail类,我尝试用PHPMailer替换PEAR :: mail(带有&没有额外的标头) – 它们都最终在垃圾文件夹中.
我开始相信它可能不是标题.
更新2:我应该提到电子邮件只是一个注册确认,以验证用户注册的电子邮件地址 – 没有邮件等,所以我们的音量非常低.
我已经考虑过警告提供@ hotmail / live电子邮件地址的用户将我们添加到他们的地址簿或检查他们的垃圾文件夹 – 但这对我来说似乎不合适 – 可能是我不得不求助于此.
至于成为发件人得分认证 – 考虑到这些电子邮件的低容量和目的,我不太可能证明这个成本是合理的.