Заголовки HTTP – это строки в HTTP сообщении, содержащие имя и значение.
Все заголовки разделяются на 4 группы:
1) Основные заголовки — должны включаться в любое сообщение клиента и сервера.
2) Заголовки запроса — используются только в запросах клиента.
3) Заголовки ответа — только для ответов от сервера.
4) Заголовки сущности — сопровождают каждую сущность сообщения.
Регистр символов в названиях заголовков не имеет значения, также заголовки с неизвестными именами игнорируются.
Значение заголовка может содержать любые символы, кроме перевода строки и возврата каретки. Регистр также не имеет значения, кроме того несколько идущих подряд пробелов преобразуются в один. Рекомендуется использовать формат даты RFC 822, время всегда указывается для часового пояса GMT.
Общие заголовки:
Cache-Control - Основные директивы для управления кэшированием.
Connection - Сведения о проведении соединения.
Date - Дата генерации отклика.
MIME-Version - Версия протокола MIME, по которому было сформировано сообщение.
Pragma - Особенные опции выполнения операции.
Trailer - Список полей, имеющих отношение к кодированию сообщения при передаче.
Transfer-Encoding - Список способов кодирования, которые были применены к сообщению для передачи.
Upgrade - Список предлагаемых клиентом протоколов. Сервер указывает один протокол.
Via - Список версий протокола, названий и версий прокси-серверов, через которых прошло сообщение.
Warning - Код, агент, сообщение и дата, если возникла критическая ситуация.
Заголовки запроса:
Accept - Список допустимых форматов ресурса.
Accept-Charset - Перечень поддерживаемых кодировок для предоставления пользователю.
Accept-Encoding - Перечень поддерживаемых способов кодирования содержимого сущности при передаче.
Accept-Language - Список поддерживаемых естественных языков.
Authorization - Данные для авторизации.
Content-Disposition - Способ распределения сущностей в сообщении при передаче нескольких фрагментов.
Expect - Указывает серверу что клиент ожидает от него дополнительного действия.
From - Адрес электронной почты ответственного лица со стороны клиента.
Host - Доменное имя и порт хоста запрашиваемого ресурса. Необходимо для поддержки виртуального хостингана серверах.
If-Match - Список тегов версий сущности. Выполнять метод, если они существуют.
If-Modified-Since - Дата. Выполнять метод если сущность изменилась с указанного момента.
If-None-Match - Список тегов версий сущности. Выполнять метод если ни одного из них не существует.
If-Range - Список тегов версий сущности или дата для определённого фрагмента сущности.
If-Unmodified-Since - Дата. Выполнять метод если сущность не изменилась с указанной даты.
Max-Forwards - Максимально допустимое количество переходов через прокси.
Proxy-Authorization - Информация для авторизации на прокси-сервере.
Range - Байтовые диапазоны для запроса фрагментов ресурса. Подробности: Частичные GET.
Referer - URI ресурса, после которого клиент сделал текущий запрос.
TE - Список расширенных способов кодирования при передаче.
User-Agent - Список названий и версий клиента и его компонентов с комментариями.
Заголовки ответа:
Accept-Ranges - Перечень единиц измерения диапазонов.
Age - Количество секунд с момента модификации ресурса.
Alternates - Указание на альтернативные способы представления ресурса.
Content-Disposition - Способ распределения сущностей в сообщении при передаче нескольких фрагментов.
ETag - Тег (уникальный идентификатор) версии сущности, используемый при кэшировании.
Location - URI по которому клиенту следует перейти или URI созданного ресурса.
Proxy-Authenticate - Параметры аутентификации на прокси-сервере.
Public - Список доступных методов аналогично Allow, но для всего сервера.
Retry-After - Дата или время в секундах после которого можно повторить запрос.
Server - Список названий и версий веб-сервера и его компонентов с комментариями. Для прокси-серверов полеVia.
Vary - Список описывающих ресурс полей из запроса, которые были приняты во внимание.
WWW-Authenticate - Параметры аутентификации для выполнения метода к указанному ресурсу.
Все заголовки разделяются на 4 группы:
1) Основные заголовки — должны включаться в любое сообщение клиента и сервера.
2) Заголовки запроса — используются только в запросах клиента.
3) Заголовки ответа — только для ответов от сервера.
4) Заголовки сущности — сопровождают каждую сущность сообщения.
Регистр символов в названиях заголовков не имеет значения, также заголовки с неизвестными именами игнорируются.
Значение заголовка может содержать любые символы, кроме перевода строки и возврата каретки. Регистр также не имеет значения, кроме того несколько идущих подряд пробелов преобразуются в один. Рекомендуется использовать формат даты RFC 822, время всегда указывается для часового пояса GMT.
Общие заголовки:
Cache-Control - Основные директивы для управления кэшированием.
Connection - Сведения о проведении соединения.
Date - Дата генерации отклика.
MIME-Version - Версия протокола MIME, по которому было сформировано сообщение.
Pragma - Особенные опции выполнения операции.
Trailer - Список полей, имеющих отношение к кодированию сообщения при передаче.
Transfer-Encoding - Список способов кодирования, которые были применены к сообщению для передачи.
Upgrade - Список предлагаемых клиентом протоколов. Сервер указывает один протокол.
Via - Список версий протокола, названий и версий прокси-серверов, через которых прошло сообщение.
Warning - Код, агент, сообщение и дата, если возникла критическая ситуация.
Заголовки запроса:
Accept - Список допустимых форматов ресурса.
Accept-Charset - Перечень поддерживаемых кодировок для предоставления пользователю.
Accept-Encoding - Перечень поддерживаемых способов кодирования содержимого сущности при передаче.
Accept-Language - Список поддерживаемых естественных языков.
Authorization - Данные для авторизации.
Content-Disposition - Способ распределения сущностей в сообщении при передаче нескольких фрагментов.
Expect - Указывает серверу что клиент ожидает от него дополнительного действия.
From - Адрес электронной почты ответственного лица со стороны клиента.
Host - Доменное имя и порт хоста запрашиваемого ресурса. Необходимо для поддержки виртуального хостингана серверах.
If-Match - Список тегов версий сущности. Выполнять метод, если они существуют.
If-Modified-Since - Дата. Выполнять метод если сущность изменилась с указанного момента.
If-None-Match - Список тегов версий сущности. Выполнять метод если ни одного из них не существует.
If-Range - Список тегов версий сущности или дата для определённого фрагмента сущности.
If-Unmodified-Since - Дата. Выполнять метод если сущность не изменилась с указанной даты.
Max-Forwards - Максимально допустимое количество переходов через прокси.
Proxy-Authorization - Информация для авторизации на прокси-сервере.
Range - Байтовые диапазоны для запроса фрагментов ресурса. Подробности: Частичные GET.
Referer - URI ресурса, после которого клиент сделал текущий запрос.
TE - Список расширенных способов кодирования при передаче.
User-Agent - Список названий и версий клиента и его компонентов с комментариями.
Заголовки ответа:
Accept-Ranges - Перечень единиц измерения диапазонов.
Age - Количество секунд с момента модификации ресурса.
Alternates - Указание на альтернативные способы представления ресурса.
Content-Disposition - Способ распределения сущностей в сообщении при передаче нескольких фрагментов.
ETag - Тег (уникальный идентификатор) версии сущности, используемый при кэшировании.
Location - URI по которому клиенту следует перейти или URI созданного ресурса.
Proxy-Authenticate - Параметры аутентификации на прокси-сервере.
Public - Список доступных методов аналогично Allow, но для всего сервера.
Retry-After - Дата или время в секундах после которого можно повторить запрос.
Server - Список названий и версий веб-сервера и его компонентов с комментариями. Для прокси-серверов полеVia.
Vary - Список описывающих ресурс полей из запроса, которые были приняты во внимание.
WWW-Authenticate - Параметры аутентификации для выполнения метода к указанному ресурсу.