我之前已经问过这个问题:HTML Email occasionally sending source code 但似乎这些解决方案并没有解决问题。
我们使用包含订单确认的PHP向客户发送HTML电子邮件。绝大多数客户收到这些电子邮件都很好。 但是,某些用户(拥有私人域名的用户)会收到这些电子邮件作为源代码。在对标题进行一些调整之后,问题现在只发生在少数用户身上,而不是所有拥有私人域名的用户。
我们的一位客户向我们发送了这封信,这是他收到的内容以及电子邮件源代码:
MIME-Version: 1.0 Content-type: text/html; charset=iso-8859-1 X-MessageSniffer-Identifier: e:\SmarterMail\Spool\proc\work\1136252898525.eml X-GBUdb-Analysis: 1, 162.13.103.84, Ugly c=0 p=0 Source New X-MessageSniffer-Scan-Result: 0 X-MessageSniffer-Rules: 0-0-0-16102-c X-RBL-Warning: BADROUTE: This E-mail was routed in a poor manner consistent with spam [2000010f]. X-RBL-Warning: ENVMISMATCH: Env sender (apache@513421-db1.comms-express.com) From: (websales@comms-express.com) mismatch. X-Declude-Sender: apache@513421-db1.comms-express.com [162.13.103.84] X-Declude-Spoolname: 1136252898525.eml X-Declude-RefID: X-MessageStream-Note: Scanned by MessageStream (www.messagestream.com). X-MessageStream-Scan: Score [4] at 13:23:17 on 01 May 2014 X-MessageStream-Tests: BADROUTE, ENVMISMATCH X-Country-Chain: 'EU' [corrupt RIPE data]->UNITED KINGDOM->destination
我从未见过这样的事情,所以我甚至不知道从哪里开始。希望有人能指出我正确的方向吗?
这些是我的标题:
$from = $from . ' '; $headers = "MIME-Version: 1.0" . "\r\n"; $headers .= "Content-type:text/html;charset=utf-8" . "\r\n"; $headers .= 'From: ' . $from . "\r\n"; $headers .= 'Reply-To: ' . $from . "\r\n"; $headers .= 'Return-Path: ' . $from . "\r\n"; $headers .= 'X-Mailer: PHP/' . phpversion() . "\r\n"; $headers .= 'X-Originating-IP: ' . $_SERVER['SERVER_ADDR'] . "\r\n";
答案 0 :(得分:3)
听起来像我这些用户将他们的电子邮件转换为txt类型的文件,而不是要解释的HTML文件。您在标题中发布的内容是一个普通的电子邮件标题,对于阅读邮件的用户隐藏,然后由为用户生成邮件的部分删除。我曾经被主管要求对消息进行身份验证,这基本上就是它所说的。