Протокол передачи гипертекста HTTP (Hyper Text Transfer Protocol)
– базирующийся на TCP/IP, обеспечивает доступ к документам на web-
узлах. Основная задача протокола состоит в установлении связи с web-
сервером и обеспечении доставки HTML-страниц web-браузеру клиента.
Протокол HTTP:
• определяет взаимодействие партнеров на прикладном уровне;
• предназначен для передачи сообщений, являющихся блоками ги-
пертекста;
•
используется в службе глобального соединения.
Транспортным протоколом для HTTP является протокол TCP, причем
сервер HTTP (сервер Web) находится в состоянии ожидания соединения со
стороны клиента стандартно по порту 80 TCP, а клиент HTTP (браузер
Web) является инициатором соединения.
Одной из важнейших функций сервера Web является предоставление
доступа к части локальной файловой системы. Для этого в настройках сер-
вера указывается некоторая директория, которая является корневой для
данного сервера Web. Чтобы опубликовать документ, то есть сделать его
доступным пользователям, «посещающим» данный сервер (осуществляю-
щим с ним соединение по протоколу HTTP), нужно скопировать этот до-
кумент в корневую директорию Web-сервера или в одну из ее поддиректо-
рий. При соединении по протоколу HTTP на сервере создается процесс с
правами пользователя, как правило, не существующего реально, а специ-
ально созданного для просмотра ресурсов сервера. Настраивая права и раз-
решения данного пользователя, можно управлять доступом к ресурсам
Web.
Взаимодействие между клиентом и сервером Web осуществляется пу-
тем обмена сообщениями (рис. 29). Сообщения HTTP делятся на запросы
клиента серверу и ответы сервера клиенту.
Рис. 29. Взаимодействие браузера и web-сервера
Запросы и ответы выглядят следующим образом:
начальная строка
заголовок 1
заголовок 2
...
заголовок N
CR LF (пустая строка)
тело сообщения (может отсутствовать).