2011-05-26 174 views
30

电子邮件标题是否区分大小写?电子邮件标头大小写?

例如,是Content-Type不同于Content-type

根据RFC 5322,我没有看到任何关于区分大小写的内容。但是,我发现使用PEAR Mail_mime模块创建MIME邮件时出现问题,并且所有内容都指向我们的SMTP服务器使用Content-typeMIME-version而不是Content-TypeMIME-Version这一事实。我尝试过使用另一个SMTP服务器(如GMail),但不幸的是我们的Web服务器的防火墙非常紧密。

+0

答案取决于你在做什么;这不仅仅是“规则”在所有情况下都适用的问题。从互联网初期开始,Postel的稳健性原则仍然是一个很好的指导:“保守你的所作所为,在自己接受他人时保持自由”。因此,如果您收到电子邮件或解析电子邮件标题,那么'不'它们不区分大小写 - 但如果您发送电子邮件或调整电子邮件标题,那么'是'它们区分大小写。 - 还要注意,对于非常古老的标准(电子邮件最初是在1982年由RFC 822指定的),常用用法胜过“规则”。 – 2014-08-21 19:30:06

回答

44

RFC 5322确实指出了这一点,但它是非常间接的。

Section 1.2.2说:

本规范使用增强 巴科斯范式(ABNF)[RFC5234] 表示法的消息 的语法的正式定义。

反过来,Section 2.3 of RFC 5234说:

注:

ABNF字符串不区分大小写和字符 这些字符串设定为US-ASCII。

所以当RFC 5322规定了production rule like this

从= “从:” 邮箱列表CRLF

这隐含的意思是 “从:” 是不区分大小写。

[更新]

至于Content-Type和MIME-版,它们由MIME规范(RFC 2045)指定。这反过来又指由原始RFC 822所描述的BNF,它(幸运地)也清楚地表明这些文字字符串不区分大小写。

底线:根据规范,电子邮件标头不区分大小写,所以它听起来像你的邮件服务器是越野车。

+0

感谢您的详细解答。它绝对有帮助。作为一个方面说明,进行更多的测试,我们已经确定它是Thunderbird的问题。每个其他邮件客户端都正确地遵守备选文本,但Thunderbird扼杀者。 – 2011-05-26 19:54:55