每当我使用PHP向我网站的成员发送电子邮件时,电子邮件最终会出现在Gmail和Hotmail等大多数电子邮件提供商的垃圾邮件文件夹中。
当我在Gmail中查看原始来源时,我会看到以下内容:
Delivered-To:mypersonalmail@gmail.com
收到:10.236.41.34,SMTP id为g22cs272510yhb;
2011年6月1日星期三05:38:27 -0700(PDT)
收到:10.236.77.102,SMTP id为c66mr7228248yhe.303.1306931907131; 2011年6月1日星期三05:38:27 -0700(PDT)
收到SPF:softfail(google.com:过渡域名@mywebserver.com的最佳猜测记录未指定为允许的发件人)
收到:10.190.5.195,POP3 id 3mf1156376yxt.72; 2011年6月1日星期三05:38:27 -0700(PDT) X-Gmail-Fetch-Info:info@mywebserver.com 14 mail.mywebserver.com 110 info@mywebserver.com
回程路径:
信封至:info@mywebserver.com
收到:来自mybestsh的s01.next-web.nl与本地(Exim 4.69)
(信封来自)
id 1QRkgT-0000BF-3v
对于info@mywebserver.com; 2011年6月1日星期三14:38:01 +0200
致:info@mywebserver.com
主题:您的新密码
MIME版本:1.0
来自:MyServer
回复:MyServer
X-Sender:MyServer
我已按如下方式设置我的SPF记录:
v=spf1 a mx ip4:xxx.xxx.xx.xx-all
我想知道导致softfail的原因。有什么想法吗?
答案 0 :(得分:13)
Return-Path标头为空。这意味着在SMTP会话期间,MAIL FROM命令未指定发送退回的电子邮件地址。它是SPF测试的来自此电子邮件地址的域。如果没有电子邮件地址,将导致软件失败。
答案 1 :(得分:10)
如果没有真实的信息(包括IP,域名,发件人地址,完整的spf记录等),很难回答这个问题。它看起来似乎没有直接发送到gmail,而是通过Gmail Fetch(Header X-Gmail-Fetch-Info)从您的服务器检索,这使得分析更加复杂。
这里有几种可能性:
答案 2 :(得分:9)
这意味着您使用不属于您的电子邮件地址发送邮件(例如,当您发送电子邮件时,您的smtp服务器的域名为CompanyABC.COM,发件人为:某人@ CompanyDDD)
答案 3 :(得分:0)
我发现了一篇有关spf检查here的很好的文章。 如果您正确设置了spf和其他设置,但仍在垃圾邮件文件夹中接收到电子邮件,则需要等待3,4个小时,如后所述
Google的垃圾邮件过滤器非常强大。如果您通过IP或IP阻止向他们的服务器发送太多垃圾邮件,则它们一次最多可以阻止您几个小时。您将收到垃圾邮件,并将其转发。他们会将邮件过滤为您认为不是垃圾邮件的垃圾邮件。无论如何,即使您不同意,您也会向他们发送电子邮件给Google,他们认为这是垃圾邮件。通过简单地接收比给定时间范围内更多的电子邮件,您的货运代理会突然停止一次工作数小时(或更糟)。