HTTP-протокол

HTTP (Hypertext Transfer Protocol) — это протокол передачи данных, базирующийся на технологии «клиент – сервер». Клиент инициирует соединение и посылает запрос, на который сервер возвращает сообщение с результатом. На сегодняшний день в основном осуществляется раскрутка сайтов, информацию с которых пользователи получают через HTTP.

В данном протоколе главный объект манипуляции — ресурс (например, файлы, хранящиеся на сервере), на который указывает унифицированный идентификатор URL в запросе клиента. Его способ представления может быть задан по различным параметрам: кодировке (для обмена двоичными данными), формату, языку и т.д.

История

Первая версия HTTP 0.9 была разработана Тимом Бернерсом-Ли в 1991 году и опубликована в январе 1992 года. С помощью спецификации протокола были упорядочены правила взаимодействия в связке «клиент – сервер» и четко разделены функции этих компонентов. В 1996 году после выпуска информационного документа RFC 1945 была реализована версия 1.0. Финальная на сегодняшний день модификация HTTP 1.1. была принята в 1999 году. В ней появился режим постоянного TCP-соединения для отправки нескольких запросов за один сеанс, а также для упрощения организации виртуального хостинга клиентов обязали отправлять информацию о названии хоста.

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

Для работы с протоколом HTTP используется программное обеспечение трех основных категорий:

  • серверы, на которых хранится и обрабатывается информация (для продвижения сайта популярны Apache, IIS, nginx и др.),
  • клиенты (браузеры, менеджеры закачек и пр.),
  • прокси для транспортных услуг.

Структура

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

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

  • GET для запроса содержимого ресурса, указанного клиентом. Он также позволяет начать заданный процесс, информация о ходе выполнения которого включается в тело ответного сообщения;
  • HEAD для тех же целей, что и GET, но без тела сообщения. Применяется для валидации URL и извлечения метаданных, используемых для поисковой оптимизации контента сайта.

Востребован также метод POST для передачи ресурсу пользовательских данных и загрузки файлов на сервер.

Все термины SEO-Википедии
Теги термина

(Рейтинг: 5, Голосов: 6)