Каждый раз, открывая сайт, вы запускаете невидимый обмен сообщениями между браузером и удалённым сервером. Правила этого обмена — HTTP: HyperText Transfer Protocol переводится как «протокол передачи гипертекста». Именно он определяет, как браузер формирует запрос, как сервер его принимает и что возвращает в ответ.
Простая аналогия: браузер — официант, сервер — кухня. Официант принимает заказ строго по регламенту и приносит готовое блюдо. HTTP — этот регламент. Без него браузер и сервер просто не поймут друг друга.
Учитесь бесплатно за счёт государства
Экономия до 100 000 ₽ на любой программе
Протокол работает на прикладном уровне модели OSI (Layer 7) поверх TCP-соединения (Transmission Control Protocol — протокол управления передачей). Ключевое свойство — stateless (без сохранения состояния): каждый запрос обрабатывается независимо от предыдущих.
Ниже — устройство HTTP от первой строки запроса до HTTPS, методов, кодов ответов и современных версий протокола.
HTTP — стандартизированный набор правил обмена данными между клиентом и сервером в интернете. Стандарт зафиксирован в RFC 9112. Слово «гипертекст» в названии исторически указывает на HTML-страницы, но сегодня протокол передаёт HTML, JSON, изображения, видео, аудио и любые другие форматы.
Ключевое свойство — stateless: сервер не помнит предыдущих запросов. Каждое обращение клиента обрабатывается с чистого листа. Это упрощает масштабирование, но создаёт трудность для авторизации и пользовательских сессий. Решение: поверх протокола используют куки (cookies) или токены доступа — JWT (JSON Web Token, токен на основе JSON).
Ещё одно следствие stateless-природы: HTTP работает строго по схеме «запрос — ответ». Клиент всегда инициирует обмен, сервер всегда отвечает. Без запроса сервер ничего не отправит.
Протокол работает на прикладном уровне — Layer 7 модели OSI. Ниже — транспортный уровень с TCP, который гарантирует доставку пакетов данных.

Когда вы вводите адрес сайта и нажимаете Enter, браузер запускает цикл из шести шагов.
Клиент всегда инициирует цикл. Роль сервера — принять, обработать и вернуть ответ.

Каждый HTTP-запрос состоит из трёх частей: стартовой строки, заголовков и тела. Стартовая строка задаёт действие и цель, заголовки передают метаданные, тело несёт данные. Части передаются в строго определённом порядке — менять его нельзя. Структура одна для всех версий HTTP/1.x.
Стартовая строка — первая строка любого запроса. Формат: МЕТОД /путь HTTP/версия. Пример: GET /index.html HTTP/1.1.
В HTTP-адресе сайта http:// или https:// — это схема URI, указывающая протокол. В HTTP/1.1 заголовок Host стал обязательным: он задаёт доменное имя и позволяет нескольким сайтам работать на одном IP-адресе — основа виртуального хостинга.
Заголовки — пары «ключ: значение», передающие метаданные запроса. Часто используемые: Host, Content-Type, Authorization, User-Agent.
Заголовок Content-Type сообщает серверу формат тела: application/json, text/html, multipart/form-data.
Тело несёт данные, которые клиент передаёт серверу. Оно есть у методов POST, PUT, PATCH — например, JSON-объект с данными формы. У GET и HEAD тело обычно отсутствует.
Метод сообщает серверу, какое действие выполнить с ресурсом. Стандарт определяет девять методов.

| Метод |
Назначение |
Идемпотентный |
Тело запроса |
Тело ответа |
|---|---|---|---|---|
| GET | Получить ресурс | Да | Нет | Да |
| POST | Создать ресурс | Нет | Да | Да |
| PUT | Заменить ресурс целиком | Да | Да | Опц. |
| PATCH | Частично изменить ресурс | Нет | Да | Опц. |
| DELETE | Удалить ресурс | Да | Опц. | Опц. |
| HEAD | Только заголовки, без тела | Да | Нет | Нет |
| OPTIONS | Узнать допустимые методы | Да | Опц. | Да |
| TRACE | Диагностика пути запроса | Да | Нет | Да |
| CONNECT | Туннель для прокси | Нет | Нет | Да |
Идемпотентность означает: повторный вызов с теми же параметрами даёт тот же результат, что и первый. GET, PUT, DELETE — идемпотентные. POST — нет: два одинаковых запроса создадут два отдельных ресурса.
Безопасные методы (GET, HEAD) не изменяют состояние сервера — только читают данные. В разработке программных интерфейсов методы соответствуют операциям CRUD (Create, Read, Update, Delete — создание, чтение, обновление, удаление): GET = Read, POST = Create, PUT/PATCH = Update, DELETE = Delete.
После обработки запроса сервер возвращает HTTP-ответ той же трёхчастной структуры: статусная строка, заголовки, тело.
Статусная строка содержит версию HTTP, трёхзначный код статуса и текстовое описание. Пример: HTTP/1.1 200 OK. Заголовки ответа передают метаданные: Content-Type (формат содержимого), Content-Length (размер тела), Location (адрес для редиректа). Тело ответа — запрошенный контент: HTML-страница, JSON-объект или файл.

Трёхзначный код статуса классифицируется по первой цифре — она задаёт класс.
1xx — информационные. Сервер принял запрос и продолжает обработку. Примеры: 100 Continue, 101 Switching Protocols.
2xx — успех. Запрос обработан корректно. Чаще всего: 200 OK, 201 Created (ресурс создан), 204 No Content (успех без тела ответа).
3xx — перенаправление. Ресурс переместился. 301 Moved Permanently — постоянный редирект, 302 Found — временный, 304 Not Modified — кэш актуален.
4xx — ошибки клиента. Проблема в запросе: 400 Bad Request (синтаксическая ошибка), 401 Unauthorized (нет аутентификации), 403 Forbidden (доступ запрещён), 404 Not Found (ресурс не найден), 429 Too Many Requests (превышен лимит запросов).
5xx — ошибки сервера. Сервер не справился с корректным запросом: 500 Internal Server Error (непредвиденный сбой в коде или конфигурации), 502 Bad Gateway, 503 Service Unavailable, 504 Gateway Timeout.

HTTPS (HyperText Transfer Protocol Secure) — защищённая версия протокола с добавленным слоем шифрования. Шифрование обеспечивает TLS (Transport Layer Security — безопасность транспортного уровня), ранее известный как SSL.
| Параметр |
HTTP |
HTTPS |
|---|---|---|
| Порт по умолчанию | 80 | 443 |
| Шифрование | Нет | TLS/SSL |
| Сертификат | Не нужен | Обязателен |
| Влияние на SEO | Нейтрально | Фактор ранжирования Google с 2014 года |
| Индикатор браузера | Предупреждение «Небезопасно» | Иконка замка |
| Применение | Внутренние сети, тесты | Все публичные ресурсы |
При HTTP данные передаются открытым текстом — любой посредник в сети может прочитать или подменить их. При HTTPS содержимое шифруется до отправки и расшифровывается только на принимающей стороне.
С 2014 года Google учитывает безопасную передачу данных как сигнал ранжирования. Браузеры маркируют HTTP-сайты предупреждением «Небезопасно», а HTTPS — иконкой замка. Для любого публичного ресурса HTTPS — обязательный стандарт, а не опция.
Протокол прошёл путь от простого однострочного запроса до бинарного мультиплексированного стандарта. Каждая новая версия устраняла узкие места предыдущей — и вектор этой эволюции: от текстового формата к бинарному, от одного запроса к параллельным потокам.
| Версия |
Год |
Транспорт |
Формат |
Ключевая особенность |
|---|---|---|---|---|
| HTTP/0.9 | 1991 | TCP | Текст | Только GET, только HTML |
| HTTP/1.0 | 1996 | TCP | Текст | Заголовки, методы POST и HEAD |
| HTTP/1.1 | 1997 | TCP | Текст | keep-alive, обязательный Host |
| HTTP/2 | 2015 | TCP | Бинарный | Мультиплексирование, сжатие заголовков |
| HTTP/3 | 2022 | QUIC | Бинарный | Устранение HOL-блокировки |
HTTP/1.1 вышел в 1997 году и оставался основным стандартом почти два десятилетия.
Keep-alive — постоянное TCP-соединение: несколько запросов и ответов проходят по одному каналу без повторного рукопожатия. Загрузка страниц с десятками ресурсов заметно ускорилась.
Обязательный заголовок Host позволил нескольким доменам работать на одном IP-адресе. Именно это сделало виртуальный хостинг нормой и заложило архитектуру современного веба.
HTTP/2 (2015 год) перевёл формат сообщений с текстового на бинарный и добавил мультиплексирование: несколько запросов передаются параллельно по одному TCP-соединению. Загрузка сложных страниц ускорилась.
Проблема осталась: HOL-блокировка (head-of-line blocking — блокировка в начале очереди) на уровне TCP. Потеря одного пакета тормозит все параллельные потоки разом.
HTTP/3 (2022 год) решил это радикально: вместо TCP использует QUIC (Quick UDP Internet Connections — быстрые соединения на основе UDP). QUIC управляет потоками независимо, потеря пакета в одном не блокирует остальные. Соединение восстанавливается быстрее на мобильных сетях и нестабильном Wi-Fi.
URI (Uniform Resource Identifier — унифицированный идентификатор ресурса) — общий термин для обозначения любого ресурса. URL (Uniform Resource Locator — унифицированный указатель ресурса) — частный случай URI, который дополнительно указывает схему и сетевое местоположение. Все URL являются URI, но не все URI — URL.
Компоненты URL по стандарту RFC 3986:
Фрагмент (символ #) не отправляется на сервер — браузер обрабатывает его локально для навигации по странице. HTTP-путь приложения — это path-компонент URL, идентифицирующий ресурс или коллекцию: /api/products, /users/42/orders.

Прокси-сервер — посредник между клиентом и сервером назначения. Клиент отправляет запрос прокси, тот пересылает его дальше, получает ответ и возвращает клиенту.
Три основных типа:
Основные функции прокси: кэширование снижает нагрузку на бэкенд, балансировка нагрузки распределяет запросы между серверами, анонимизация скрывает реальный IP клиента.
Метод HTTP CONNECT создаёт туннель через прокси для HTTPS-соединений: прокси пропускает зашифрованный трафик, не расшифровывая его.
HTTP — фундамент архитектурного стиля REST (Representational State Transfer — передача представления состояния). В программном интерфейсе (API) конечная точка (эндпоинт) — это URL плюс HTTP-метод: вместе они однозначно определяют операцию.
Примеры:
Аутентификация передаётся через заголовок Authorization: токен Bearer или Basic-авторизация. Так как HTTP stateless, для хранения сессий используют куки или JWT: куки браузер прикрепляет автоматически, JWT — передаётся в заголовке Authorization вручную.
Хотите разобраться в веб-технологиях глубже и перейти в IT? В рамках федерального проекта «Активные меры содействия занятости» нацпроекта «Кадры» можно пройти обучение по востребованным направлениям — аналитика, системный анализ, кибербезопасность, нейросети — онлайн, без отрыва от работы и без вложений. Смотрите каталог доступных программ.
HTTP (HyperText Transfer Protocol) — набор правил, по которым браузер и сервер обмениваются данными в интернете. Браузер отправляет запрос, сервер возвращает ответ с содержимым. Протокол stateless: каждый запрос обрабатывается независимо, без памяти о предыдущих.
HTTPS — защищённая версия протокола с шифрованием по TLS/SSL. HTTP работает через порт 80, HTTPS — через 443. При HTTP данные передаются открытым текстом, при HTTPS — шифруются. Браузер показывает замок при HTTPS и предупреждение «Небезопасно» при HTTP.
В информатике HTTP — протокол прикладного уровня модели OSI (Layer 7). Задаёт формат запросов и ответов, набор методов и классы кодов статусов. Работает поверх TCP (HTTP/1.x, HTTP/2) или QUIC (HTTP/3).
Стандарт определяет девять методов: GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS, TRACE, CONNECT. В разработке API чаще всего используют первые пять: GET = получить, POST = создать, PUT/PATCH = обновить, DELETE = удалить.
500 Internal Server Error — непредвиденный сбой на стороне сервера: ошибка в коде или конфигурации. Проблема не на стороне клиента. Смежные коды: 502 Bad Gateway, 503 Service Unavailable, 504 Gateway Timeout.
HTTP/2 использует бинарный формат и мультиплексирование — параллельные запросы по одному TCP-соединению. HTTP/1.1 текстовый, запросы последовательные. HTTP/3 идёт дальше: заменяет TCP на QUIC, устраняя head-of-line blocking на транспортном уровне.
404 Not Found — сервер не нашёл запрошенный ресурс. Причины: неверный URL, ресурс удалён или перемещён. При постоянном переносе правильный ответ — 301 Moved Permanently с новым адресом в заголовке Location.
401 Unauthorized — клиент не прошёл аутентификацию: нет токена или он неверный. 403 Forbidden — сервер знает, кто вы, но доступ к ресурсу закрыт. На 401 сервер возвращает заголовок WWW-Authenticate с инструкцией по авторизации.
HTTP-прокси — посредник между клиентом и сервером: принимает запросы, пересылает их, кэширует ответы. Используется для анонимизации (сервер видит IP прокси, а не клиента), кэширования и распределения нагрузки. Reverse-прокси (Nginx) стоит перед серверами приложений на инфраструктурной стороне.
HTTP-путь (path) — компонент URL после домена: /api/users/123. В REST API путь идентифицирует ресурс, метод задаёт действие. GET /api/users/123 — получить данные пользователя, DELETE /api/users/123 — удалить запись.
Подайте заявку —
забронируйте место в группе
45 000 мест на 2026 год. Бесплатное обучение по федеральному проекту «Активные меры содействия занятости»