HyperText Transfer Protocol - протокол обмена WWW -
серверов
HyperText Transfer Protocol (HTTP) - это протокол
прикладного уровня, применяемый в
распределенных информационных системах
гипермедиа. HTTP используется проектом World Wide Web с
1990 года.
HTTP/1.0 предоставляет открытое множество методов,
которые могут быть использованы для указания
целей запроса. Они построены на дисциплине
ссылок, где для указания ресурса, к которому
должен быть применен данный метод, используется
Универсальный Идентификатор Ресурсов (Universal Resource
Identifier - URI), в виде местонахождения (URL)
или имени (URN). Формат сообщений сходен с форматом
Internet Mail или Multipurpose Internet Mail Extensions (MIME-Многоцелевое
Расширение Почты Internet).
HTTP/1.0 используется также для коммуникаций между
различными пользовательскими просмотрщиками и
шлюзами, дающими гипермедиа доступ к
существующим Internet протоколам, таким как SMTP, NNTP, FTP,
Gopher и WAIS. HTTP/1.0 разработан, чтобы позволять таким
шлюзам через proxy серверы, без какой-либо потери
передавать данные с помощью упомянутых
протоколов более ранних версий.
HTTP основывается на парадигме запросов/ответов.
Запрашивающая программа (обычно она называется
клиент) устанавливает связь с обслуживающей
программой-получателем (обычно называется
сервер) и посылает запрос серверу в следующей
форме: метод запроса, URI, версия протокола, за
которой следует MIME-подобное сообщение,
содержащее управляющую информацию запроса,
информацию о клиенте и, может быть, тело
сообщения. Сервер отвечает сообщением,
содержащим строку статуса (включая версию
протокола и код статуса - успех или ошибка), за
которой следует MIME-подобное сообщение,
включающее в себя информацию о сервере,
метаинформацию о содержании ответа, и, вероятно,
само тело ответа. Следует отметить, что одна
программа может быть одновременно и клиентом и
сервером. Использование этих терминов в данном
тексте относится только к роли, выполняемой
программой в течение данного конкретного сеанса
связи, а не к общим функциям программы.
В Internet коммуникации обычно основываются на TCP/IP
протоколах. Для WWW номер порта по умолчанию - TCP 80,
но также могут быть использованы и другие номера
портов - это не исключает возможности
использовать HTTP в качестве протокола верхнего
уровня.
Для большинства приложений сеанс связи
открывается клиентом для каждого запроса и
закрывается сервером после окончания ответа на
запрос. Тем не менее, это не является
особенностью протокола. И клиент, и сервер должны
иметь возможность закрывать сеанс связи,
например, в результате какого-нибудь действия
пользователя. В любом случае, разрыв связи,
инициированный любой стороной, прерывает
текущий запрос, независимо от его статуса. |