HTTP

HTTP (с англ. «HyperText Transfer Protocol») — один из множества прикладных протоколов для передачи информации в виде гипертекстовых документов в формате HTML . сети Интернет.

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

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

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

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

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

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

Структура протокола HTTP

Любой запрос в протоколе состоит из трех частей с соблюдением их порядка:

  1. Стартовая строка — определяет тип запроса (сообщения).
  2. Заголовок — описывает тело запроса, параметры передачи и прочие данные.
  3. Тело сообщения — сама информация, которая передается. Обязательно должно быть отделено от заголовка пустой строчкой.

Заголовок и тело сообщения могут отсутствовать, однако стартовая строка — обязательный элемент, так как в ней указывается тип запроса/ответа.

Программное обеспечение

Всё программное обеспечение для работы с протоколом HTTP разделяется на три большие категории:

  1. Серверы как основные поставщики услуг хранения и обработки информации (обработка запросов).
  2. Клиенты — конечные потребители услуг сервера (отправка запроса).
  3. Прокси для выполнения транспортных служб.

Для отличия конечных серверов от прокси в официальной документации используется термин «исходный сервер» (англ. origin server). Один и тот же программный продукт может одновременно выполнять функции клиента, сервера или посредника в зависимости от поставленных задач. В спецификациях протокола HTTP подробно описывается поведение для каждой из этих ролей.

Уроки по теме: