这是一个棘手的问题,我一直依靠诸如基于权限的电子邮件(即仅发送给您有权发送给其的人)之类的技术,而不使用公然的垃圾邮件术语。
最近,我以编程方式发送的某些电子邮件已开始自动被改编到人们的垃圾邮件文件夹中,我不知道该怎么办。
尽管有这样的事实,这些特定的电子邮件不是人类会标记为垃圾邮件的电子邮件,特别是,它们是包含人们为之付出高昂代价的许可证密钥的电子邮件,因此我认为他们不会将其视为垃圾邮件
我认为这是一个大话题,从本质上讲,我是一个愚昧无知的人。
这是一个棘手的问题,我一直依靠诸如基于权限的电子邮件(即仅发送给您有权发送给其的人)之类的技术,而不使用公然的垃圾邮件术语。
最近,我以编程方式发送的某些电子邮件已开始自动被改编到人们的垃圾邮件文件夹中,我不知道该怎么办。
尽管有这样的事实,这些特定的电子邮件不是人类会标记为垃圾邮件的电子邮件,特别是,它们是包含人们为之付出高昂代价的许可证密钥的电子邮件,因此我认为他们不会将其视为垃圾邮件
我认为这是一个大话题,从本质上讲,我是一个愚昧无知的人。
Answers:
使用SPF和DKIM之类的电子邮件身份验证方法来证明您的电子邮件和您的域名属于同一类,并防止欺骗您的域名。SPF网站包括一个向导,用于为您的站点生成DNS信息。
检查您的反向DNS,以确保您的邮件服务器指向的IP地址,您用于发送邮件的域名。
确保您使用的IP地址不在黑名单中
确保答复地址是有效的现有地址。
在“收件人”字段中使用收件人的全名,而不只是电子邮件地址(例如"John Smith" <john@blacksmiths-international.com>
)。
监视您的滥用帐户,例如abuse@yourdomain.com和postmaster@yourdomain.com。这意味着-确保这些帐户存在,阅读发送给他们的内容,并对投诉采取行动。
最后,取消订阅真的很容易。否则,您的用户将通过按垃圾邮件按钮来退订,这将影响您的声誉。
就是说,让Hotmail接受您的电子邮件仍然是一门妖术。
先前答案的几点要点:
最重要:发件人地址(“发件人”)是否属于在您发送电子邮件的服务器上运行的域?如果不是,请这样做。切勿使用类似的发件人地址xxx@gmail.com
。用户reply-to
是否需要答复才能到达其他地址。
您的服务器是否列入黑名单(例如,在spamhaus.org上检查IP)?当您在共享主机上且邻居表现不佳时,这是一种可能。
邮件是否被垃圾邮件过滤器过滤?使用带有垃圾邮件文件夹的freemailer开一个帐户,然后查找。另外,请尝试将邮件发送到一个完全没有任何垃圾邮件过滤功能的地址。
您是否可能需要mail()的第五个参数“ -f”添加发件人地址?(请参阅PHP手册中的mail()命令)
如果您有权访问日志文件,请检查这些文件。
发送电子邮件之前,请确认您具有正确的电子邮件地址。如果有人在注册时输入了错误的电子邮件地址,请尽快将其打败。
始终在每封电子邮件中包含明确的“如何退订”信息。不需要用户登录即可取消订阅,它应该是1-click取消订阅的唯一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格式发送的电子邮件也难以理解为纯文本格式,除非有消息来源和以前的宝贵经验,否则我可能会删除该电子邮件,除非我知道对它感兴趣。
如您所见,它最终处于用户的控制之下,并且没有自动行为可以使这样的系统确信您的邮件仅从其结构上就是合法的。在这种情况下,您需要表现得很好,不要做任何类似于网络钓鱼的事情,并使愿意信任您的邮件的用户轻松将您添加到白名单中。
雅虎使用一种称为“发件人ID”的方法,该方法可以在“ SPF设置向导”中进行配置并输入到您的DNS中。对于Exchange,Hotmail,AOL,Yahoo等而言,重要的一项也是为您的域提供反向DNS。这些将解决大多数问题。但是,您永远无法防止有人故意阻止您的规则或自定义规则。
我会补充:
单击“取消订阅”后,提供真正的取消订阅。我看过真正的新闻通讯提供了一个虚拟的取消订阅链接,单击该链接会显示“已成功取消订阅”,但我仍然会收到更多新闻通讯。
您可以做的最重要的事情是,确保要向其发送电子邮件的人员在收到您的电子邮件时不太可能点击“垃圾邮件”按钮。因此,请遵循以下经验法则:
确保您已将电子邮件发送给的人的许可。永远不要将电子邮件发送给没有您要求的人。
在每封邮件的顶部清楚地标识您是谁,以及该人为什么接收电子邮件。
至少每月一次,向列表中的人员发送提醒电子邮件(如果您正在运行列表),迫使他们重新选择加入列表,以便继续接收您的来信。是的,这意味着您的列表会随着时间的推移而变短,但是有利的是,列表中的人员被“买进了”,并且不太可能标记您的电子邮件。
保持您的内容高度相关和有用。
让人们轻松选择退出进一步的交流。
使用像SendGrid这样的电子邮件发送服务,该服务会努力保持良好的IP信誉。
避免使用短链接-这些短链接通常被列入黑名单。
遵循这些经验法则将有很长的路要走。
极有可能是注册您的服务的人正在输入带有您无法纠正的输入错误的电子邮件。例如:chris @ gmial.com -or- james @ hotnail.com。
并将此类域配置为用作垃圾邮件陷阱,它将自动标记您的电子邮件服务器的IP和/或域,并损害其声誉。
为避免这种情况,请仔细检查在订购产品时输入的电子邮件地址。另外,在向他们发送产品密钥或接受其订阅之前,请发送确认电子邮件以真正确保此电子邮件地址已由输入确认电子邮件的人员100%验证。验证电子邮件应要求收件人单击链接或回复,以真正确认邮箱的所有者是注册的人。
听起来您好像要依靠一些反馈来确定什么东西卡在了接收端。您应该自己检查出站邮件是否存在明显的“麻烦”。
购买任何体面的垃圾邮件控制系统,然后通过它发送出站邮件。如果您发送大量邮件,则无论如何都要这样做,因为存在发送出站病毒的风险,尤其是如果您有桌面Windows用户。
例如,Proofpoint在单个部署中具有垃圾邮件+防病毒+一些信誉服务。(我曾经在那工作,所以我碰巧知道这件事。我敢肯定,这个领域的其他供应商也有类似的功能。)但是,您明白了。如果您通过基本的商业垃圾邮件控制设置发送邮件,但邮件没有通过,则该邮件不应从您的网络中删除。
此外,有些公司可以帮助您提高非垃圾邮件出站电子邮件的发送率,例如Habeas。
Google为此提供了工具和指南。您可以在以下网址找到它们:https: //postmaster.google.com/注册并验证您的域名,然后Google提供该IP地址和域的单独评分。
根据批量发件人指南:
身份验证可确保您的邮件可以正确分类。缺乏身份验证的电子邮件很可能会被拒绝或放置在垃圾邮件文件夹中,因为它们很可能是伪造的用于网络钓鱼诈骗的邮件。此外,出于安全原因,带有附件的未经身份验证的电子邮件可能会被彻底拒绝。
为确保Gmail可以识别您的身份,请执行以下操作:
在您发送的每封批量邮件的“发件人:”标头中使用相同的地址。我们还建议以下内容:
使用DKIM签名消息。我们不会对使用少于1024位的密钥签名的消息进行身份验证。
我一直使用: https //www.mail-tester.com/
它为我提供了有关发送电子邮件的技术方面的反馈。像SPF记录,DKIM,Spamassassin得分等等。即使我知道需要什么,我也会不断出错,而mail-tester.com可以很容易地找出可能出问题的地方。
若要允许DMARC通过SPF的检查并在使用sendmail时也进行对齐,请确保将信封发件人地址(-f
或-r
参数)设置为与From:
标头地址。
mail()
如果未正确设置,则使用PHP的内置功能而未设置第五参数将导致DMARC SPF检查未对齐。默认情况下,sendmail将使用Web服务器的用户作为RFC5321 .MailFrom / Return Path标头发送电子邮件。
例如,假设您要domain.com
在host.com
Web服务器上托管网站。如果不设置其他参数,则参数:
mail($to,$subject,$message,$headers); // Wrong way
电子邮件收件人将收到带有以下邮件标题的电子邮件:
Return-Path: <your-website-user@server.host.com>
From: <your-website-user@domain.com>
即使这通过了SPF检查,也将是未对齐的(因为domain.com和host.com不匹配),这意味着DMARC SPF检查将因为未对齐而失败。
相反,您必须通过在PHP mail()
函数中包含第5个参数来将信封发件人地址传递给sendmail ,例如:
mail($to,$subject,$message,$headers, '-r bounce_email@domain.com'); // Right way
在这种情况下,电子邮件收件人将收到带有以下邮件标题的电子邮件:
Return-Path: <bounce_email@domain.com>
From: <your-website-user@domain.com>
由于这两个标头都包含来自的地址domain.com
,因此SPF将通过并被对齐,这意味着DMARC也将通过SPF检查。