如何确保以编程方式发送的电子邮件不会被自动标记为垃圾邮件?

StackOverflow https://stackoverflow.com/questions/371

  •  08-06-2019
  •  | 
  •  

这是一个棘手的问题,我一直依赖技术,例如基于许可的电子邮件(即只发送给您有权发送的人)并且不公然使用 垃圾邮件 术语。

最近,我以编程方式发送的一些电子邮件开始被自动混入人们的垃圾邮件文件夹中,我想知道我能对此做些什么。

尽管这些特定的电子邮件不会被人们标记为垃圾邮件,具体来说,它们是包含人们花了很多钱购买的许可证密钥的电子邮件,所以我认为他们不会将它们视为垃圾邮件

我认为这是一个很大的话题,我本质上是一个无知的傻瓜。

有帮助吗?

解决方案

使用电子邮件身份验证方法,例如 SPF, , 和 德基姆 证明您的电子邮件和您的域名属于同一组,并防止您的域名被欺骗。SPF 网站包含一个向导,用于为您的站点生成 DNS 信息。

查看 你的 反向域名解析 确保您的邮件服务器的 IP 地址指向您用于发送邮件的域名。

确保您使用的 IP 地址是 不在黑名单上

确保回复地址是有效的现有地址。

在“收件人”字段中使用收件人的完整真实姓名,而不仅仅是电子邮件地址(例如 "John Smith" <john@blacksmiths-international.com> ).

监控您的滥用帐户,例如abuse@yourdomain.com 和postmaster@yourdomain.com。这意味着 - 确保这些帐户存在,阅读发送给他们的内容,并对投诉采取行动。

最后,做出来 真的 轻松取消订阅。否则,您的用户将通过按取消订阅 垃圾邮件 按钮,这会影响您的声誉。

也就是说,让 Hotmail 接受您的电子邮件仍然是一种魔法。

其他提示

在尽可能多的主要电子邮件提供商(gmail/yahoo/hotmail/aol/等)上注册帐户。如果您对电子邮件进行更改,无论是重大改写、更改发送电子邮件的代码、更改电子邮件服务器等,请确保将测试邮件发送到您的所有帐户并验证它们没有被标记为垃圾邮件。

您可以告诉您的用户在完成订单时将您的发件人地址添加到他们的联系人中,如果他们这样做,将会有很大帮助。

否则,我会尝试从您的一些用户那里获取日志。有时,他们会在邮件标题中提供有关为何将其标记为垃圾邮件的详细信息,您可以使用这些详细信息来调整文本。

您可以尝试的其他事情:

  • 将您的网站名称或地址放在主题中
  • 保留邮件中指向您的域的所有链接(而不是 email.com)
  • 在电子邮件中输入地址或其他联系信息

一些要点 之前的回答:

  • 最重要的: 发件人地址(“发件人”)是否属于您发送电子邮件的服务器上运行的域?如果没有,那就这样吧。切勿使用发件人地址,例如 xxx@gmail.com. 。用户 reply-to 如果您需要回复才能到达不同的地址。

  • 您的服务器是否在黑名单上(例如在 spamhaus.org 上检查 IP)?当您使用共享主机且邻居行为不当时,就有可能出现这种情况。

  • 邮件是否被垃圾邮件过滤器过滤?使用有垃圾邮件文件夹的免费邮件程序开设帐户并找出答案。另外,尝试将邮件发送到根本没有任何垃圾邮件过滤的地址。

  • 您是否可能需要 mail() 的第五个参数“-f”来添加发件人地址?(参见 PHP 手册中的 mail() 命令)

  • 如果您有权访问日志文件,当然请检查这些文件。

  • 您是否检查“发件人:”地址以查找可能的退回邮件(“退回发件人”)?您还可以设置单独的“错误至”地址。

发送电子邮件之前,请确认您拥有正确的电子邮件地址。如果有人在注册时提供了错误的电子邮件地址,请尽快严厉批评他们。

在每封电子邮件中始终包含明确的“如何取消订阅”信息。不需要用户登录才能取消订阅,它应该是一键取消订阅的唯一 URL。

这将防止人们将您的邮件标记为垃圾邮件,因为“取消订阅”太难了。

您可以考虑使用处理递送问题的第三方电子邮件服务:

  • 精确目标
  • 垂直响应
  • 持续接触
  • 活动监控
  • 艾玛
  • 返回路径
  • 智能联系
  • 银波普

除了所有其他答案之外,如果您要发送包含 URL 作为链接文本的 HTML 电子邮件,请确保 URL 与链接文本匹配。我知道如果不是的话,Thunderbird 会自动将它们标记为骗局。

错误的方法:

Go to your account now: <a href="http://www.paypal.com.phishers-anonymous.org/">http://www.paypal.com</a>

正确的方式:

Go to your account now: <a href="http://www.yourdomain.org/">http://www.yourdomain.org</a>

或者使用不相关的链接文本而不是 URL:

<a href="http://www.yourdomain.org/">Click here to go to your account</a>

发送电子邮件有时就像黑魔法。反向DNS确实很重要。

我发现仔细跟踪 NDR 非常有帮助。我将所有 NDR 定向到一个地址,并使用 Windows 服务来解析它们(Google ListNanny)。我将尽可能多的 NDR 信息放入数据库中,然后对其运行报告,看看我是否突然开始被某个域阻止。此外,您还应该避免将电子邮件发送到之前标记为 NDR 的地址,因为这通常是垃圾邮件的良好迹象。

如果您需要一次发送一堆客户服务电子邮件,最好在每封电子邮件之间设置一个延迟,因为如果您一次向一个域发送太多几乎相同的电子邮件,那么您肯定会收到他们的邮件。黑名单。

有些域名有时根本无法交付。Comcast.net 是最差的。

确保您的 IP 未列在以下网站上 http://www.mxtoolbox.com/blacklists.aspx.

我不想告诉你,但我和其他人可能正在使用白名单默认值来控制我们对垃圾邮件的过滤。

这意味着来自未知来源的所有电子邮件都会自动成为垃圾邮件并转移到垃圾邮件文件夹中。(我不让我的电子邮件服务删除垃圾邮件,因为我想始终检查到达的邮件是否有误报,这通过快速扫描文件夹很容易做到。)

我什至将自己的电子邮件放入垃圾邮件桶,因为 (1) 我通常不向自己发送电子邮件,并且 (2) 有垃圾邮件发送者在发送给我的垃圾邮件中伪造我的回信地址。

因此,为了摆脱垃圾邮件指定,我必须考虑您的邮件可能是合法的(根据发件人和主题信息),并首先以纯文本形式打开它(我对所有传入邮件的默认设置,无论是否是垃圾邮件),看看它是否合法。我的垃圾邮件文件夹不会使用电子邮件中的任何链接,因此我可以免受棘手的图像链接和其他不当行为的影响。

如果我希望将来来自同一来源的邮件能够进入我的收件箱,并且不会被转入垃圾邮件审核,我会向我的电子邮件客户端指定这一点。对于那些使用批量邮件转发器和每封邮件都有唯一发件人地址的组织来说,这太糟糕了。它们从未得到我的批准,并且总是出现在我的垃圾邮件文件夹中,如果我很忙,我永远不会看它们。

最后,如果一封电子邮件的纯文本格式不清晰,即使以 HTML 格式发送,我也可能会将其删除,除非根据来源和以前的宝贵经验,我知道它是我感兴趣的内容。

正如您所看到的,它最终处于用户的控制之下,并且没有任何自动行为可以使这样的系统相信您的邮件仅从其结构来看是合法的。在这种情况下,您需要表现得友善,不要做任何类似于网络钓鱼的事情,并让愿意信任您的邮件的用户轻松将您添加到他们的白名单中。

我的应用程序的一封电子邮件经常被标记为垃圾邮件。它是带有单个链接的 html,我将其作为正文中的 html 发送,内容类型为 text/html。

我对这个问题最成功的解决方案是撰写电子邮件,使其看起来像是由电子邮件客户端生成的。

我将电子邮件更改为多部分/替代 MIME 文档,现在生成文本/纯文本和文本/html 部分。

Outlook 不再将电子邮件检测为垃圾邮件。

雅虎使用一种称为发件人 ID 的方法,可以在 SPF 设置向导 并输入您的 DNS。对于 Exchange、Hotmail、AOL、Yahoo 和其他公司来说,重要的事情之一就是为您的域提供反向 DNS。这些将解决大部分问题。但是,您永远无法阻止有人故意阻止您的规则或自定义规则。

您需要一个反向 DNS 条目。您不需要将相同的内容发送给同一用户两次。您需要使用一些常见的网络邮件和电子邮件客户端来测试它。就我个人而言,我通过一个新安装的垃圾邮件杀手、一个训练有素的垃圾邮件杀手以及多个 hotmail、gmail 和 aol 帐户来运行我的程序。

但是您是否见过那些似乎没有链接或广告的垃圾邮件?这是垃圾邮件发送者试图影响您的贝叶斯过滤器。如果他能获得很高的评价,然后在他未来的电子邮件中包含一些单词,那么它可能会自动学习为好。因此,您无法真正猜测在发送邮件时用户的过滤器将被设置为什么。

最后,我没有按域对列表进行排序,而是将其随机化。

我发现在正文中使用收件人的真实名字和姓氏是通过垃圾邮件过滤器的可靠方法。

在英国,最佳做法还包括您公司的真实实际地址及其注册号码。

这样,一切都是公开和诚实的,他们就不太可能手动将其标记为垃圾邮件。

我想补充一点:

点击“取消订阅”即可提供真正的取消订阅。我见过真正的时事通讯提供了一个虚拟的取消订阅链接,点击后显示“已成功取消订阅”,但我仍然会收到更多的时事通讯。

您可以做的最重要的事情是确保您发送电子邮件的人在收到您的电子邮件时不太可能点击“垃圾邮件”按钮。因此,请遵循以下经验法则:

  • 确保您获得了您要向其发送电子邮件的人的许可。切勿向未向您请求的人发送电子邮件。

  • 在每封邮件的顶部清楚地表明您是谁,以及此人收到电子邮件的原因。

  • 至少每月一次向列表中的人员发送提醒电子邮件(如果您正在运行列表),迫使他们选择重新加入列表,以便继续接收来自您的通信。是的,这意味着您的列表会随着时间的推移而变得越来越短,但好处是列表中的人会“接受”,并且不太可能标记您的电子邮件。

  • 保持您的内容高度相关且有用。

  • 为人们提供一种选择退出进一步通信的简单方法。

  • 使用像 SendGrid 这样的电子邮件发送服务,它会努力保持良好的 IP 声誉。

  • 避免使用短链接 - 这些链接通常被列入黑名单。

遵循这些经验法则将会大有帮助。

我过去在工作中做过的许多网站上都遇到过同样的问题。确保用户收到电子邮件的唯一有保证的方法是建议用户将您添加到安全列表中。任何其他方法实际上只是可以提供帮助,并且不能保证。

很可能的情况是,注册您的服务的人输入的电子邮件中存在您未更正的打字错误。例如:克里斯@gmial.com -或- 詹姆斯@热钉网.

这些域被配置为用作 垃圾邮件陷阱 这会自动标记您的电子邮件服务器的 IP 和/或域并损害其声誉。

为了避免这种情况,请仔细检查您在产品订阅时输入的电子邮件地址。另外,在向他们发送产品密钥或接受他们的订阅之前,请发送一封确认电子邮件,以真正确保输入确认电子邮件的人员 100% 验证该电子邮件地址。验证电子邮件应要求收件人点击链接或回复,以真正确认邮箱的所有者是注册人。

听起来您正在依赖一些反馈来确定接收端卡住的是什么。您应该亲自检查出站邮件是否有明显的“垃圾邮件”。

购买任何像样的垃圾邮件控制系统,并通过它发送出站邮件。如果您发送的邮件量相当大,则无论如何都应该这样做,因为存在发送出站病毒的风险,特别是如果您有桌面 Windows 用户。

例如,Proofpoint 在单个部署中包含垃圾邮件+防病毒+一些信誉服务。(我曾经在那里工作过,所以我碰巧知道这一点。我确信这个领域的其他供应商也有类似的功能。)但是您明白了。如果您通过基本的商业垃圾邮件控制设置发送邮件,但没有通过,则它不应该离开您的网络。

此外,还有一些公司可以帮助您提高非垃圾邮件、出站电子邮件的递送率,例如 Habeas。

谷歌为此提供了工具和指南。您可以在以下位置找到它们: https://postmaster.google.com/ 注册并验证您的域名,Google 会提供该 IP 地址和域名的单独评分。

来自 批量发件人指南:

身份验证可确保您的消息可以正确分类。缺乏身份验证的电子邮件可能会被拒绝或放入垃圾邮件文件夹,因为它们很可能是用于网络钓鱼诈骗的伪造邮件。此外,出于安全原因,未经身份验证的带有附件的电子邮件可能会被彻底拒绝。

为确保 Gmail 可以识别您的身份:

  • 使用一致的 IP 地址发送批量邮件。
  • 保留您发送邮件的 IP 地址的有效反向 DNS 记录,指向您的域。
  • 在您发送的每封批量邮件的“发件人:”标头中使用相同的地址。我们还推荐以下内容:

  • 使用 DKIM 签署消息。我们不会验证使用少于 1024 位的密钥签名的消息。

  • 发布 SPF 记录。
  • 发布 DMARC 策略。

我总是使用:https://www.mail-tester.com/

它为我提供了有关发送电子邮件的技术部分的反馈。如 SPF 记录、DKIM、Spamassassin 分数等。尽管我知道需要什么,但我还是不断地犯错误,而 mail-tester.com 可以轻松找出可能出现的问题。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top