我的客户的网站具有普通的“用户网站”电子邮件模式。创建一个帐户,收到一封激活电子邮件。在订阅到期等时收到电子邮件。
该站点托管在 Bluehost 上,目前它使用 php 的 mail() 函数。允许的配置不多(据我所知)。
问题是,这些电子邮件中约有三分之一消失在空白中。它们不在垃圾邮件或垃圾文件夹中,也没有退回邮件,它们只是不复存在。我已经阅读了有关 Bluehost 电子邮件问题的信息,但我不知道我的解决方案是什么。这些不是营销电子邮件,即它们包含特定于用户的信息。我想如果一个解决方案提供了一个很好的模板系统就可以了。
我有哪些选择?
发送到 Gmail 地址时的标题摘录:
Received-SPF: neutral (google.com: 00.000.000.000 is neither permitted nor denied by best guess record for domain of domain@box###.bluehost.com) client-ip=00.000.000.000;
DomainKey-Status: good
Authentication-Results: mx.google.com; spf=neutral (google.com: 00.000.000.000 is neither permitted nor denied by best guess record for domain of domain@box###.bluehost.com) smtp.mail=domain@box###.bluehost.com; domainkeys=pass header.From=user@domain.com
Run Code Online (Sandbox Code Playgroud)
您可能遇到了共享主机的一个常见问题:一个相当糟糕的用户(或一些轻度不良用户)或服务器上发送(或允许其他人发送)垃圾邮件的不安全脚本将导致来自该 IP 的所有邮件地址被怀疑是垃圾。即使您有专门的 IP 地址供您的网站和其他服务响应,您可能会发现您的外发邮件似乎与服务器上的每个其他帐户都来自相同的地址。
同样,主机地址范围内的许多问题都可以从其范围内的任何地方收到被视为可疑的邮件(尽管这会影响所有托管安排,而不仅仅是共享托管)。
如果您能看到被标记为垃圾邮件并进入人们的垃圾文件夹的邮件的标题,那将是值得一看的,因为某些垃圾邮件检测器会在邮件标题中添加注释,以表明它用于做出判断的措施。这将使您免于尝试解决不存在的问题。大多数反垃圾邮件设置只会丢弃通过其措施看起来真的很像垃圾的邮件。这可能就是那些“消失在虚空中”的邮件所发生的情况——它们不太可能在你的最后丢失。例如,当 SpamAssassin 收到一封明显的垃圾邮件时,添加到我的邮件标题是:
X-Spam-Flag: YES
X-Spam-Score: 9.959
X-Spam-Level: *********
X-Spam-Status: Yes, score=9.959 tagged_above=-10 required=5.4
tests=[BAYES_99=3.5, DYN_RDNS_SHORT_HELO_HTML=0.499,
HTML_MESSAGE=0.001, RCVD_IN_PBL=0.905, RDNS_DYNAMIC=0.1,
URIBL_BLACK=1.955, URIBL_SBL=1.499, URIBL_WS_SURBL=1.5]
Run Code Online (Sandbox Code Playgroud)
您可以通过为您的域设置DomainKeys、Sender ID、Sender Policy Framework、...、...、...的相关 DNS 条目来帮助解决这种情况,但如果主机的 IP 地址在黑名单中,这可能是实用性相对有限。
如果主机的 IP 地址在黑名单上,您可以要求主机遵循现有的任何程序来尝试纠正它。如果他们不这样做,切换主机可能是最好的选择。
您还可以在便宜的 VPS 上设置您自己的外发邮件中继(即使是“愚蠢的小”1 或 2 美元/月的 VPS 也会为您运行一个简单的邮件中继),以将您的邮件与其他帐户的邮件分开您的应用程序运行的服务器,但是虽然您可能是唯一从分配给您的地址发送的人,在这种情况下,您仍然可能遇到该主机由于其他用户而将其所有范围列入黑名单的问题。
长话短说:你最终能做的可能并不多。邮件从来都不是真正可靠的传输方式,而且由于垃圾邮件/反垃圾邮件军备竞赛,它变得越来越不可靠,因此您永远无法保证所有邮件都能通过。