用 php & 发送邮件转义 hotmails 垃圾文件夹 [英] sending mail with php & escaping hotmails junk folder

查看:30
本文介绍了用 php & 发送邮件转义 hotmails 垃圾文件夹的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我一直在尝试让 PEAR::mail 成功地将电子邮件发送给 hotmail 用户,而不会被标记为垃圾邮件并最终进入垃圾文件夹,我在使用 yahoo/gmail 时只使用 hotmail 没有问题.

I have been trying to get PEAR::mail to successfully deliver emails to hotmail users without being flagged as SPAM and ending up in the junk folder, i have no problems with yahoo/gmail only with hotmail.

google 认为这是 hotmail 的常见问题,可能的原因包括

google suggested that this is a common problem with hotmail and that possible causes can include

  • 服务器主 IP 的反向 DNS 不正确
  • 缺少 SenderId/SPF 记录
  • 被列入黑名单

检查了以上所有内容后,我只能想到另一个原因 - 标题格式不正确?

having checked all of the above i can only think of one other reason - incorrectly formatted headers ?

为了测试这个理论,我设置了 Outlook 通过 PEAR::mail 使用的相同地址发送电子邮件并发送了一个快速测试 - 它直接发送到我的收件箱

to test this theory i set up outlook to send email via the same address that PEAR::mail uses and sent a quick test - it delivered straight to my inbox

所以我将 PEAR::mail 发送的电子邮件的标题与 Outlook 发送的标题进行了比较,只有一些不同之处 - 我只列出了不同之处以节省空间(和人们的眼睛)

so i compared the headers from the email sent from PEAR::mail against the headers sent by Outlook and there are only a few differences - i have only listed the differences to save space (and peoples eyes)

PEAR::mail 标题(不在 Outlook 标题中)

PEAR::mail headers (not in outlook headers)

X-PHP-Script: www.example.com/register.php for [users ip address]

Outlook 标题(不在 PEAR::mail 标题中)

Outlook headers (not in PEAR::mail headers)

X-Mailer: Microsoft Office Outlook 11
Thread-Index: Ack6CWSQlgV8s6+6SWyifka2NNpB7g==
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3350

我能看到的唯一其他区别是

the only other differences that i can see are

  • From: 和 To: 标题的顺序颠倒了
  • 在 Received: 标题部分

展望

Received: from myhomehostname.com ([ip address] helo=simber) 
by mywebhostname.com with local (Exim 4.67)

梨::邮件

Received: from apache by mywebhostname.com with local (Exim 4.67)

标题中的这些微小差异可能是原因还是我找错了地方?我知道这可能有问题,因此为什么我选择使用 PEAR::mail 类而不是自己滚动,但现在我真的不知道该去哪里,任何帮助将不胜感激.

could these small differences in the headers be the cause or am i looking in the wrong place ? i knew this might be problematic hence why i chose to use the PEAR::mail class rather than rolling my own but now i really have no idea where to go with this, any help would be greatly appreciated.

更新: 根据变更日志的建议,我尝试将 MS 标头添加到 PEAR::mail 类,并且尝试用 PHPMailer 替换 PEAR::mail(使用& 没有额外的标题)-它们最终都在垃圾文件夹中.

Update: as per changelog's suggestion i have tried adding the MS headers to the PEAR::mail class and i have tried replacing PEAR::mail with PHPMailer (with & without the extra headers) - they all end up in the junk folder.

我开始相信这可能不是标题.

I am starting to believe that it may not be the headers afterall.

更新 2: 我应该提到电子邮件只是用于验证用户注册的电子邮件地址的注册确认 - 没有邮件等,所以我们的数量是极低.

Update 2: i should have mentioned that the emails are just a registration confirmation to validate the email address the user signed up with - no mailshots etc so our volume is extremely low.

我曾考虑警告提供@hotmail/live 电子邮件地址的用户将我们添加到他们的地址簿或检查他们的垃圾文件夹 - 但这对我来说似乎不专业 - 可能我不得不求助于这个.

I have considered warning users who provide a @hotmail/live email address to add us to their address book or check their junk folder - but this just seems unprofessional to me - it may be that i have to resort to this.

至于获得发件人评分认证 - 考虑到这些电子邮件的数量和目的较低,我不太可能证明这样做的成本是合理的.

As for becoming Sender Score Certified - its very unlikely that i can justify the cost of this when considering the low volume and purpose of these emails.

推荐答案

我的公司从事专业的电子邮件营销活动(通过 strongmail 服务器),我们每天向各种地址发送数千封(请求)电子邮件.

My company does professional e-mail marketting campaigns (through strongmail servers) we send thousands of (sollicited) emails a day to all kinds of addresses.

您面临的问题是您没有权限.您可能只是一些试图发送大量垃圾邮件的垃圾邮件发送者.

The problem you are facing is that you have no authority. You could just be some spammer trying to send loads of spam.

你需要做的是:

  • 添加退订链接
  • 申请 hotmail 的垃圾邮件报告计划 (JMRP),确保按下这是垃圾邮件"按钮的人不会再次收到邮件.这将提高您的发件人分数;@ hotmail 并允许您通过邮件.
  • 添加 SPF 和其他反垃圾邮件解决方案.
  • 不要每分钟向@hotmail.com 发送超过 50 封电子邮件(其他域有其他限制)
  • Add unsubscribe links
  • Apply for hotmail's Junkmail reporting program (JMRP) and MAKE SURE people that press the 'this is junk' button do not get mailed again. This will up your 'sender score; @ hotmail and allow you messages to get through.
  • Add SPF and other antispam solutions.
  • Do not send more than 50 e-mails per minute to @hotmail.com (other domains have other limits)

顺便说一句,我们使用 PHPMailer 来撰写我们的邮件,完全没有问题:-)现在的问题确实是限制接收邮件服务器.

B.t.w we use PHPMailer to compose our messages, no problem at all with that :-) The problem nowadays really is the restricting receiving mailservers.

这篇关于用 php & 发送邮件转义 hotmails 垃圾文件夹的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆