小写头

关于CloudFlare和Google的Web服务器,我注意到的一点是它们都使用小写的响应头。 这只是看起来,还是它实际上提供了一个性能提升? 我正在考虑为我的自定义nginx构build做,但到目前为止,我不确定是否会有任何负面/积极的后果。 我知道HTTP 1.1上的RFC 2616规范说头是不区分大小写的,所以我相信它不会导致任何问题,否则Google和CloudFlare将不会使用它们。

来自google.com的示例响应标题:

 HTTP / 1.1 200 OK
状态:200 OK
版本:HTTP / 1.1
caching控制:私人,最大年龄= 0
内容编码:gzip
 content-type:text / html; 字符集= UTF-8
date:2013年1月22日(星期二)20:58:07 GMT
到期:-1
服务器:gws
 x-frame-options:SAMEORIGIN
 x-xss-protection:1; 模式=块

正如您所指出的那样,根据RFC 2616 HTTP Headers(的确,协议中的许多内容)不区分大小写。
你可以使用camelCase或者InterCap来提高可读性,或者你可以尝试使用这种方法来惹恼任何需要debuggingHTTP交换的人。

Google和CloudFlare使用明确要求小写头的SPDY协议(在HTTP旁边)。

小写字母的键入速度更快(不需要shift键),在开发过程中可以节省大量的时间,但是使用这些字符对性能的影响不会太大 – 小写字母并不是“小”字电线比大写的。


如果你知道所有事情都是小写的,你可以避免在你的软件中不区分大小写的parsing/比较,交易鲁棒性(和RFC一致性)以提高边际速度。
这当然不是一个好主意(你不知道你的客户要发送什么)。 我不会在nginx中处理头文件,因为没有一个很好的理由去做。 它已被写入,它的工作原理,如果你开始瞎搞的话,你就更有可能打破某些东西而不是改进任何东西。