"Человек - самое уязвимое место в системе безопасности.."

Суть протокола http

Hyper Text Transfer Protocol

HTTP — протокол доставки гипертекстовых документов. Он реализует функционирование сети и является его базой для передачи данных. На сегодня все методы просмотра страниц в Internet должны соответствовать спецификации HTTP/1.1, который был представлен в июне 1999 г.

Любой стандарт связанный с Internet записан в виде RFC-документов. Главным разработчиком процедурных правил и алгоритмов можно признать Тима Брнернерс-Ли, который участвовал в создании всех версий протокола HTTP, начиная с HTTP/0.9.

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

Протокол HTTP описывает алгоритм действий клиентского ПО (браузер) в момент запроса. Браузеры могут записывать специальные поля в заголовке HTTP-запроса, для того, что бы сервер присылал документ только тогда, когда документ устарел. Также они управляют кэшированием данных в промежуточных прокси-серверах. Пример HTTP-запроса, который посылается браузером открытым текстом по ТСР-каналу:

GET /index.shtml HTTP/1.1
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 5.0; Windows NT;
DigExt)
Host: thermo.karelia.ru
Connection: Keep-Alive
Cookie: voted=21; uid=45639

В нем идет запрос index.shtml — главная страница сервера thermo.karelia.ru. При этом указано:

  • версия HTTP
  • возможность defate и gzip — компрессии
  • имя Web-сервера
  • правило поддержания соединения
  • файл персонализации который был получен ранее

Web-сервер должен отреагировать на такой запрос. Он либо отправит запрашиваемый документ, либо создаст пакет ошибки. Если этих двух действий не произойдет, то браузер через некоторое время закроет соединения, и покажет пользователю что сервер не доступен.

Что бы создать веб-серверу самый простой запрос, достаточно создать tcp-соединение с 80 портом серверу. и послать к примеру (скорее всего сервер выдаст ошибку):

GET / HTTP/1.1
и нажать два раза Enter ()

Смотрите также: