1

我有一个网站(目前正在为第三方开发,很抱歉我无法显示),要求用户在注册网站时点击发送到他们电子邮件地址的链接来确认他们的联系信息.

这是一种非常标准的做法,不是非常技术性或独特性,这就是为什么我惊讶地发现 Hotmail 和 Yahoo(也许还有其他人,我不确定)正在阻止通过运行的 PHP 代码动态生成的任何电子邮件网站。

我正在使用 PHP 框架 CodeIgniter,并使用他们的电子邮件库。我检查了我的代码,一切看起来都很棒,我还查看了电子邮件类,它看起来也很不错。

更不用说,发送的邮件会发送到我尝试过的所有其他邮件服务,包括 gmail 和几个 POP 帐户。这让我相信问题出在 Hotmail/Yahoo 端。

我怀疑他们是因为格式、主题内容或其他一些任意问题而故意拒绝/退回邮件。

HTML 电子邮件设计极少,仅真正将 HTML 用于标题标签和链接。消息的主题只是简单地说“欢迎来到____”,地址是“support@______.com”。

我的问题是,是否有任何与可能导致此问题的原因相关的文章,我可以阅读这些文章以更好地了解邮件被拒绝的原因,以便我可以解决问题?

文章或文档最好来自 Hotmail 和 Yahoo(带有内部信息),或者来自遇到相同问题并找到解决方案的人。

此外,是否有任何可用的实用程序来测试消息到达服务器后实际发生的情况(即它是被退回还是其他什么?)

非常感谢你!:)

4

4 回答 4

3

确保您的域有SPF 记录,并且它们设置正确。这将有很长的路要走。

电子邮件可传递性是一个复杂的话题。在之前的演出中,我是ESPC的成员。此PDF 链接可能有用,也可能已过时。另请参阅this other similar SO question

于 2008-12-14T08:39:23.930 回答
0

我的朋友有一个通知系统,他的 PHP 代码使用 SMTP 发送通知。所以他的通知实际上是从他的 Gmail 帐户发送的。他这样做是为了防止 hotmail/etc 自动阻止电子邮件。

我不知道这是否有帮助

于 2008-12-14T04:53:27.133 回答
0

您的电子邮件以什么标题结尾?它是否在电子邮件中包含足够的“有价值的文本”,或者它是否主要是链接(到您的站点、确认链接、“联系我们”链接……)。这可以在垃圾邮件过滤器中发挥重要作用,以确定电子邮件是否包含原始和有价值的内容。

于 2008-12-14T22:03:31.203 回答
0

我遇到了类似的问题 - 只有 hotmail.com。Gmail 和当地的国家供应商工作正常。我的邮件是这样组合的:

 $headers  = "MIME-Version: 1.0\r\n";
 $headers .= "Content-type: text/plain; charset=iso-8859-1\r\n";
 $headers .= "X-Priority: 1\r\n";
 $headers .= "X-MSMail-Priority: High\r\n";
 $headers .= "X-Mailer: Company name\r\n";
 $headers .= "From: \"Company name\" <info@company.ee>";
 mail($email, "title", $message, $headers,"-finfo@company.ee");

欢迎所有建议

于 2008-12-15T13:38:48.677 回答