Назад | Перейти на главную страницу

Заголовки в нижнем регистре

Одна вещь, которую я заметил в веб-серверах CloudFlare и Google, заключается в том, что они оба используют заголовки ответов в нижнем регистре. Это просто для внешнего вида или действительно обеспечивает повышение производительности? Я подумываю сделать это для своей собственной сборки nginx, но на данный момент я не совсем уверен, будут ли какие-либо отрицательные / положительные последствия. Я знаю, что в спецификации RFC 2616 для HTTP 1.1 говорится, что заголовки нечувствительны к регистру, поэтому я уверен, что это не вызовет никаких проблем, иначе Google и CloudFlare не будут их использовать.

Пример заголовков ответа с google.com:

HTTP/1.1 200 OK
status: 200 OK
version: HTTP/1.1
cache-control: private, max-age=0
content-encoding: gzip
content-type: text/html; charset=UTF-8
date: Tue, 22 Jan 2013 20:58:07 GMT
expires: -1
server: gws
x-frame-options: SAMEORIGIN
x-xss-protection: 1; mode=block

Как вы отметили, за RFC 2616 Заголовки HTTP (действительно, многие вещи в протоколе) нечувствительны к регистру.
Вы можете использовать camelCase или InterCap для удобочитаемости, или вы можете набрать эти символы и раздражать любого, кто должен отлаживать ваши HTTP-обмены.

Google и CloudFlare используют протокол SPDY (рядом с HTTP), который явно требует заголовков в нижнем регистре.

Символы нижнего регистра набираются быстрее (не требуется клавиша Shift) и могут сэкономить целую секунду в процессе разработки, но их использование не окажет никакого влияния на производительность - буквы нижнего регистра не «меньше» провода, чем заглавные.


Если вы знаете, что все будет в нижнем регистре, вы можете избежать нечувствительного к регистру синтаксического анализа / сравнения в своем программном обеспечении, торговую надежность (и соответствие RFC) для незначительного увеличения скорости.
Это определенно не ХОРОШАЯ идея (вы не знаете, что отправят ваши клиенты). Я бы вообще не стал возиться с обработкой заголовков в nginx, если бы для этого не было действительно веской причины. Это написано, это работает, и у вас больше шансов что-то сломать, чем что-то улучшить, если вы начнете возиться с этим.