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

最近,我以编程方式发送的一些电子邮件开始被自动转移到别人的垃圾邮件文件夹中,我不知道该怎么办。

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

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


当前回答

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

其他回答

要允许DMARC检查SPF通过,并在使用sendmail时进行对齐,请确保将信封发件人地址(-f或-r参数)设置为与From:报头地址中的域匹配的内容。

PHP:

使用PHP内置的mail()函数而不设置第5个参数将导致DMARC SPF检查不对齐。默认情况下,sendmail将以web服务器的用户RFC5321发送电子邮件。MailFrom / Return路径头。

例如,假设您在host.com web服务器上托管您的网站domain.com。如果您不设置附加参数参数:

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检查。

我还要补充说:

提供真正的取消订阅点击“取消订阅”。我见过真正的通讯提供一个虚拟的退订链接,点击显示“已成功退订”,但我仍然会收到进一步的通讯。

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

否则,我将尝试从您的一些用户那里获取日志。有时,他们会在邮件的标题中详细说明为什么它被标记为垃圾邮件,您可以使用它来调整文本。

你还可以试试其他方法:

在主题中写上你的网站名称或地址 保持邮件中的所有链接指向你的域名(而不是email.com) 在邮件中写上地址或其他联系方式

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

确切的目标 垂直响应 不断的联系 竞选班长 艾玛 返回路径 IntelliContact ”

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

它能给我关于发送电子邮件的技术方面的反馈。比如spf记录,DKIM, Spamassassin分数等等。即使我知道需要做什么,我还是不断地犯错误,mail-testster.com让我很容易找出哪里出了问题。