gpt4 book ai didi

email - 电子邮件中正确的换行符是什么? LF 还是 CRLF?

转载 作者:行者123 更新时间:2023-12-02 10:33:59 25 4
gpt4 key购买 nike

最近,一些客户提示他们收到了乱码电子邮件。显示 MIME header 和 Base64 编码数据等。这些内容应该由邮件客户端解码。

经过调查,我发现一些邮件客户端(例如 gmx.de webmail)在每隔一行之后插入一个空行,因此确实搞乱了一切。

根据预感,我更改了邮件发送代码,将所有 CRLF 替换为 LF。你瞧,邮件完整抵达。

现在,这很奇怪,因为 RFC 5322明确指出

2.3. Body

The body of a message is simply lines of US-ASCII characters. Theonly two limitations on the body are as follows:

o CR and LF MUST only occur together as CRLF; they MUST NOT appearindependently in the body.

嗯?网络邮件不好?还是我哪里做错了?其他网络邮件(例如 gmail)对此没有任何问题,而且实际上似乎大多数人都没有问题(因为投诉很少)。

请注意 - 我正在 Linux 机器上通过 PHP 的 mail() 函数发送电子邮件。底层邮件软件好像是qmail,但我不确定。

看来qmail doesn't like CRLF under similar conditions 。这可能是问题所在吗?它不是已经修复了吗(该页面已经 4 年没有更新了)?

最佳答案

http://www.php.net/manual/en/function.mail.php

Note:

If messages are not received, try using a LF (\n) only. Some Unix mail transfer agents (most notably qmail) replace LF by CRLF automatically (which leads to doubling CR if CRLF is used). This should be a last resort, as it does not comply with RFC 2822.

关于email - 电子邮件中正确的换行符是什么? LF 还是 CRLF?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6783863/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com