Когда мы разбирали общую структуру HTTP запросов и ответов, то одной из частей, из которой эта структура состояла, являлись HTTP заголовки (Message Headers). Давайте сейчас подробнее рассмотрим, что это такое.

http заголовки

Заголовки – это специальные параметры, которые несут определенную служебную информацию о соединении по HTTP. Некоторые заголовки имеют лишь информационный характер для пользователя или для компьютера, другие передают определенные команды, исходя из которых, сервер или клиент будет выполнять какие-то действия.

В зависимости от того, где эти заголовки могут находиться, они разделяются на:

General Headers (Основные заголовки) — должны быть и в запросах и в ответах клиента и сервера.

Request Headers (Заголовки запроса) — используются только в запросах клиента.

Response Headers (Заголовки ответа) — используются только в ответах сервера.

Entity Headers (Заголовки сущности) — сопровождают каждую сущность сообщения.

Каждый заголовок имеет следующий вид:

параметр: значение

Немного о правилах написания, что нужно иметь в виду:

1) Регистр (большие или маленькие буквы) здесь не учитываются. Можно писать и так и так.

2) Пишутся латинскими буквами.

3) После параметра должен идти символ двоеточия (:)

4) Окончанием пары «параметр:значение» служит символ переноса строки.

Вот, примеры некоторых заголовков:

Host: webkyrs.info
User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:18.0) Gecko/20100101 Firefox/18.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3

На самом деле, количество возможных заголовков, которые можно указать, очень большое. Я не вижу смысла приводить их все здесь.

Если вы знаете английский, то почитать о них можно в оригинале на страницах стандарта HTTP 1.1.

http://tools.ietf.org/html/rfc2616

Кроме того, есть перевод этого стандарта на русский язык здесь:

http://www.lib.ru/WEBMASTER/rfc2068/

Есть еще хорошая табличка, которая опубликована на страницах википедии:

http://ru.wikipedia.org/wiki/%D1%EF%E8%F1%EE%EA_%E7%E0%E3%EE%EB%EE%E2%EA%EE%E2_HTTP

Больше моих уроков по серверному программированию здесь.