Понимание, что такое протокол HTTP и как он работает очень важная задача для любого веб-мастера. Имея эти знания, вы можете значительно упростить себе жизнь в будущем и избавиться от множества проблем, которые могут у вас возникать.

В этой заметке давайте разберемся с самыми основами: что же такое протокол HTTP и зачем он нужен.

Итак, первое, что нужно понимать, протокол HTTP – это всего лишь один, из множества протоколов (почитайте об этом здесь), которыми можно пользоваться в сети Интернет. У него есть собственные цели и задачи.

Программное обеспечение, которое работает с этим протоколом, называется браузер. Знакомая программа, правда?

Когда вы заходите в браузер, не важно, какой именно браузер у вас установлен, и вводите в адресную строку адрес к сайту, то браузер автоматически прибавляет к адресу приставку «http://». Единственное, эта приставка может быть по умолчанию скрыта, но если скопировать адрес и вставить его в другое место, то ее без труда можно будет увидеть.

Эта приставка обозначает, что вы будете обращаться к ресурсу по протоколу HTTP.

Основная задача протокола HTTP – это прием и передача гипертекстовых документов. Т.е. тех веб-страниц, которые мы просматриваем в браузере.

Сторона, которая принимает содержимое веб-страниц - браузер (еще его называют клиентом), а сторона, которая отдает содержимое веб-страниц - сервер.

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

Технологию, по которой происходит этот обмен, называют «клиент-серверной» технологией.

По сути, протокол HTTP – это инструмент, с помощью которого можно передавать веб-странички в сети Интернет. А, что собой представляет веб-страница, которую мы получаем в ответе сервера? На самом деле это обычный HTML-код , который получает браузер и соответствующим образом его интерпретирует.

протокол http 

Работает это следующим образом.

1 этап. Клиент (браузер) отправляют строку запроса (HTTP-запрос), которая создается по определенным правилам, и запрашивает нужную веб-страничку на сервере.

2 этап. Сервер принимает запрос и ищет у себя эту веб-страницу. По результатам этого поиска создается ответ клиенту (HTTP-ответ).  Этот ответ тоже оформляется по определенным правилам.

Если все прошло успешно и страница найдена, то в этом ответе будет передан код нужной веб-страницы + дополнительная служебная информация.

Если произошел, какой-то сбой, то будет передан код ошибки и дополнительная служебная информация.

В общих чертах, это основа работы протокола HTTP. Всегда нужно держать в голове эту картину и тогда остальные тонкости, что именно передается в запросах и ответах, станет намного понятнее.

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

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

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

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

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