一个问题:
来自我的服务器的电子邮件如下:
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: base64
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09IA0KZGV2IA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09IA0KICAgICAgICAgICAgICAgIA0KKioqIFRIQU5LIFlPVSBGT1IgWU9V
[...]
在 Thunderbird 中显示如下,而在 gmail 中显示则看起来应该如此。
现在,有多个服务器使用相同的代码 - 所有服务器发送的所有电子邮件,但这个服务器在 Thunderbird 中看起来都很好。这是相同代码但服务器设置不同的克隆。
服务器是Ubuntu
10.04LTS,使用postfix
php 5...除此之外,配置相当标准。
什么可能出错?
答案1
PHP 代码是如何分发到你们的服务器的?通过版本控制?从开发人员工作站复制?还是从主服务器 rsync?
我在想,使用 Windows 的人可能直接在该服务器上编辑了生成电子邮件的 PHP 文件,导致换行符\r\n(DOS)而不仅仅是\n(Unix)。这可能会弄乱消息头,导致某些客户端仍可以正常显示您的消息,但其他客户端会感到困惑。