可能重复:
如何发送电子邮件并避免其被归类为垃圾邮件
我一直在开发一个 PHP 应用程序,该应用程序的一个功能是能够向用户发送电子邮件。但是,当我尝试通过应用程序 (SMTP) 向 Gmail 和 Hotmail 帐户发送电子邮件时,它们总是进入垃圾邮件箱。当我使用 Google SMTP 发送它们时,不会发生这种情况。这些电子邮件已正确发送到收件箱。
我已完成的操作:
- 设置反向 DNS
- 设置域密钥 (DKIM) 和 SPF (v=spf1 +a +mx +ip4:184.107.222.2 ?all)
- 运行各种 IP/域检查,我没有发现任何问题。
- 注册 SNDS。检查我的 IP 后,它显示“所有指定 IP 均处于正常状态”。
- 联系 Gmail 和 Hotmail 支持。他们没有发现任何会阻止我的邮件到达其客户的东西,并建议我加入发件人分数认证邮件计划(尽管他们不保证它能保证电子邮件能够送达其客户)。
进入垃圾邮件箱的电子邮件标题示例(网站名称已被 xxx 替换):
Delivered-To: [email protected]
Received: by 10.50.17.8 with SMTP id k8csp200979igd;
Sun, 23 Dec 2012 05:13:19 -0800 (PST)
X-Received: by 10.50.53.162 with SMTP id c2mr13168931igp.112.1356268399035;
Sun, 23 Dec 2012 05:13:19 -0800 (PST)
Return-Path: <[email protected]>
Received: from server.xxx.com (server.xxx.com. [184.107.222.2])
by mx.google.com with ESMTPS id gx9si16855394igb.34.2012.12.23.05.13.18
(version=TLSv1/SSLv3 cipher=OTHER);
Sun, 23 Dec 2012 05:13:18 -0800 (PST)
Received-SPF: pass (google.com: domain of [email protected] designates 184.107.222.2 as permitted sender) client-ip=184.107.222.2;
Authentication-Results: mx.google.com; spf=pass (google.com: domain of [email protected] designates 184.107.222.2 as permitted sender) smtp.mail=admin@xxx .com; dkim=pass [email protected]
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=xxx.com; s=default;
h=Content-Type:MIME-Version:Message-ID:Subject:Reply-to:From:To:Date; bh=C+NTtxJMfonnwJsUGv2YpiHXmAQt43Cmk567o37IJhA=;
b=UlnRc4rM6uVp44OaPfIicZ3vgH7eKR+7E4BQwADhtVSgvlmnwlw4aqGanvUZn8jGCWJ4hdPNFY3GLWJ5uT82EM57baCL0t7yxgjWg7/CXm4IHJ0SusxWI+e5JjGBv3pd;
Received: from server.xxx.com ([184.107.222.2]:38728 helo=applicationnewtest.xxx.com)
by server.xxx.com with esmtpa (Exim 4.80)
(envelope-from <[email protected]>)
id 1Tmlwc-0004uj-GQ
for [email protected]; Sun, 23 Dec 2012 07:50:22 -0600
Date: Sun, 23 Dec 2012 07:50:22 -0600
To: New Supplier <[email protected]>
From: Distributor Bid Builder <[email protected]>
Reply-to: Distributor Bid Builder <[email protected]>
Subject: Supplier Purchase Order Email Copy
Message-ID: <[email protected]>
X-Priority: 3
X-Mailer: PHPMailer 5.0.0 (phpmailer.codeworxtech.com)
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="b1_f8c08c9269c441d7a0e04b7ba37e9adf"
X-AntiAbuse: This header was added to track abuse, please include it with any abuse report
X-AntiAbuse: Primary Hostname - server.xxx.com
X-AntiAbuse: Original Domain - gmail.com
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain - xxx.com
X-Get-Message-Sender-Via: server.xxx.com: authenticated_id: [email protected]
--b1_f8c08c9269c441d7a0e04b7ba37e9adf
Content-Type: text/html; charset = "UTF-8"
Content-Transfer-Encoding: 8bit
This is purchase order document for purchase order #1001.<br><br><hr>P.S. This is a post-only mailing. Replies to this message are not monitored or answered.
--b1_f8c08c9269c441d7a0e04b7ba37e9adf
Content-Type: application/octet-stream; name="Supplier Purchase Order #1001 Email Copy.pdf"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="Supplier Purchase Order #1001 Email Copy.pdf"
(attachment)
您发现我的配置有什么问题吗?
在收集 Microsoft JMRP 程序注册信息时,我不确定下一步该做什么(如果它不能使这些电子邮件进入收件箱)。真的有必要注册 Sender Score Certified 程序/使用电子邮件递送服务吗?有没有非商业解决方案?
答案1
您的邮件被视为垃圾邮件而被拒绝,因为它完全符合一种非常常见的恶意软件分发方案的概况:声称是订单或发货确认的邮件,带有 PDF 附件。
我的建议:
清理语法。“这是采购订单#1001的采购订单文件”?英语听起来很蹩脚难以置信垃圾邮件,尽管我声称自己没有内幕消息,但您可以假设 Gmail 认为语法错误是评定潜在垃圾邮件的一个因素。真正的采购订单只会有一个标题“采购订单”,后面跟着实际的采购订单内容。它不会先说“你好朋友,这是购买定冠词的采购订单。”
用内联内容替换 PDF 附件。通过恶意制作的 PDF 附件利用 Adobe 漏洞是感染远程计算机恶意软件的一种非常流行的方法。如果我是 Gmail,我也会将来自未知发件人的 PDF 附件标记为垃圾邮件。
摆脱“仅邮寄”的胡言乱语,这几乎肯定会提高您的贝叶斯垃圾邮件分数,并从有效的回复地址发送邮件。如果您真的以这种方式发送真正的采购订单,您会想知道它们是否会被退回,并且您会希望供应商能够回复,对吗?对。
您需要包含公司的名称和地址、网站链接、有效的联系电子邮件地址和电话信息等。您的邮件看起来越匿名和“肇事逃逸”,就越有可能被归类为垃圾邮件。
除非有非常充分的理由不这样做,否则您应该以 结尾您的 SPF 记录
-all
。SPF 记录的全部目的是明确识别有效的发件人 IP 并禁止其他所有人。您不应该让接收邮件服务器来决定未列出的发件人 IP 是否有效。