我的Gmail/Hotmail邮件从我的服务器过滤垃圾邮件时遇到问题。垃圾邮件刺客分数相当低,所以我知道我的IP不在任何黑名单上,或者这意味着它是gmail/hotmail使用阻止电子邮件通过的过滤。使用PHP发送邮件时DKIM签名不验证
我做了一些研究,并读到使用DKIM可能会解决我遇到的问题。我继续在我的服务器上启用DKIM。现在,当我使用我的电子邮件客户端发送电子邮件时,位于此处的工具(http://www.brandonchecketts.com/emailtest.php)会将DKIM签名报告为有效。
下一步是在我的PHP邮件中实现一个DKIM签名。所以我继续使用这个位于这里的DKIM类(http://sourceforge.net/projects/dkim-class-php/),这是PHPMailer的衍生产品。
但是,当我现在发送电子邮件时,尽管包含DKIM签名,但我从验证工具中收到了一个奇怪的错误。
result = fail
Details: message has been altered
你可以看到完整的报告在这里:http://www.brandonchecketts.com/emailtest.php?email=K86KTXpMbl%40www.brandonchecketts.com
感谢您的帮助,我拼命地得到这个工作,现在已经被敲我的头几个小时墙上。
你似乎在签署from和主题标题(加上正文)。你应该检查你和测试程序之间的邮件服务器是否改变这些标题或正文内容。问题也可能是DKIM签名者类是错误的或者使用了错误的键。 – Borealid 2012-07-30 18:59:10
如何检查没有邮件服务器正在更改正文内容?此外,关键是绝对正确的,只是双重检查它。 – nmford 2012-07-30 19:07:40
检查您发送的消息和测试程序收到的消息。确保它们在签名的地方相同。 – Borealid 2012-07-30 19:17:26