🌐 Este artigo está em russo. Ler via Google Tradutor →

O que é HTTP em palavras simples

HTTP (HyperText Transfer Protocol) — это язык общения между вашим браузером и веб-сервером. Когда вы вводите example.com в адресной строке, происходит примерно такой диалог:

Браузер → Сервер:  GET / HTTP/1.1
                  Host: example.com
                  User-Agent: Chrome/124
                  Accept: text/html

Сервер → Браузер:  HTTP/1.1 200 OK
                  Content-Type: text/html
                  Content-Length: 1234
                  
                  <html>...</html>

Браузер отправляет HTTP-запрос (Request), сервер отвечает HTTP-ответом (Response). Всё взаимодействие построено на этом простом принципе «запрос-ответ».

HTTP — протокол прикладного уровня в модели OSI. Он работает поверх TCP (по умолчанию порт 80) или TLS (тогда это HTTPS, порт 443).

Ключевые свойства HTTP

Como o HTTP é diferente do HTTPS?

HTTPS (HTTP Secure) — это HTTP, работающий поверх TLS. Данные шифруются до отправки и расшифровываются после получения. Перехватить «посередине» можно, но прочитать — нельзя.

Что меняется в HTTPS

АспектHTTPHTTPS
Порт80443
ШифрованиеНетTLS 1.2 / 1.3
СертификатНе нуженX.509 от CA (Let's Encrypt, Sectigo и др.)
СкоростьБыстрее (без оверхеда)Чуть медленнее (handshake ~200-500 мс)
SEOШтраф от GoogleБонус к ранжированию
Доверие«Не защищено»Замок в адресной строке
ПерехватЛюбой на пути видит всёТолько каша

С 2017 года Google Chrome помечает все HTTP-сайты как «Не защищено». С 2018 года HTTP-сайты теряют позиции в поиске. С 2023 года большинство браузеров блокируют HTTP-формы с паролями и платёжными данными.

Сейчас HTTPS — это не опция, а обязательный минимум. Получить сертификат бесплатно: наш SSL Check покажет, насколько корректно настроен TLS на вашем сайте.

💡 С 2014 года HTTPS использует только TLS (раньше был ещё SSL, но он устарел и уязвим). Когда говорят «SSL-сертификат» — имеют в виду TLS-сертификат, хотя термин «SSL» прижился.

Como funciona o TLS

TLS (Transport Layer Security) — криптографический протокол, обеспечивающий три вещи:

  1. Шифрование — никто не прочитает данные при перехвате.
  2. Аутентификация — вы уверены, что общаетесь именно с тем сайтом.
  3. Целостность — данные не подменены по пути.

TLS Handshake (установка соединения)

Перед первым HTTP-запросом клиент и сервер «здороваются» и договариваются о ключах. Упрощённо (TLS 1.3, 1-RTT):

  1. Client Hello. Браузер отправляет список поддерживаемых шифров, версию TLS, случайное число.
  2. Server Hello + Certificate + Finished. Сервер выбирает шифр, отправляет свой сертификат (X.509), подтверждение.
  3. Проверка сертификата. Браузер проверяет, что сертификат:
    • выдан доверенным CA (из встроенного списка),
    • не просрочен,
    • совпадает с доменом,
    • не отозван (CRL/OCSP).
  4. Обмен ключами. Браузер и сервер генерируют общий сессионный ключ (X25519 / ECDHE). Даже если перехватят handshake — ключ не узнают.
  5. Шифрованное соединение. Дальнейший HTTP-трафик шифруется симметричным AES-256-GCM или ChaCha20-Poly1305.

Весь процесс занимает 0.5-1.5 RTT (round-trip time), то есть 50-200 мс до первого байта. На TLS 1.3 это быстрее, чем на TLS 1.2.

Проверить, какие версии TLS поддерживает ваш сайт: наш SSL Check покажет сертификат, цепочку, поддерживаемые протоколы, шифры.

Версии TLS

Versões: HTTP/1.1, HTTP/2, HTTP/3

HTTP/1.1 (1997) — классика

Каждый запрос — отдельное TCP-соединение (или 6 параллельных). Один файл = один запрос. Для страницы с 50 картинками, JS и CSS — десятки соединений, задержки на каждый.

Главная проблема: head-of-line blocking — пока один запрос не обработан, следующий ждёт.

HTTP/2 (2015) — революция

Одно TCP-соединение, по нему — мультиплексирование множества запросов «одновременно». Сжатие заголовков (HPACK), server push (сервер угадывает, что понадобится).

Главные фичи:

Реальный эффект: страница грузится в 1.5-2 раза быстрее, особенно на мобильных.

HTTP/3 (2022) — следующая ступень

Главное отличие: HTTP/3 работает поверх QUIC (UDP), а не TCP. Это решает проблему head-of-line blocking на уровне транспорта.

Преимущества HTTP/3:

Поддержка: ~30% сайтов в 2025, в основном крупные (Google, YouTube, Facebook, Cloudflare). Браузеры все поддерживают с 2020-2021.

ПараметрHTTP/1.1HTTP/2HTTP/3
Год199720152022
ТранспортTCPTCPQUIC (UDP)
ШифрованиеОпциональноОпционально (но везде с TLS)Обязательно (TLS 1.3)
МультиплексированиеНетДаДа + нет HoL blocking
Сжатие заголовковНетHPACKQPACK
СкоростьБазовая×1.5-2×2-3 (особенно на мобильных)

Какая версия у вашего сайта: наш HTTP Headers покажет версию в ответе сервера.

Métodos HTTP: GET, POST, PUT, DELETE

Каждый HTTP-запрос имеет метод, указывающий, какое действие нужно выполнить. Основные:

МетодНазначениеИдемпотентныйБезопасный
GETПолучить ресурс✅✅
HEADКак GET, но без тела (проверить заголовки)✅✅
POSTСоздать ресурс или отправить данные❌❌
PUTЗаменить ресурс целиком✅❌
PATCHЧастично обновить ресурс❌❌
DELETEУдалить ресурс✅❌
OPTIONSУзнать, какие методы поддерживает сервер✅✅

Идемпотентный метод — можно выполнить много раз, результат тот же. GET, PUT, DELETE — идемпотентные. POST — нет (каждый POST может создать новый заказ).

Безопасный метод — не должен менять состояние на сервере. GET, HEAD, OPTIONS — безопасные.

Примеры:

Códigos de resposta: 2xx, 3xx, 4xx, 5xx

Каждый HTTP-ответ начинается с кода состояния. Первая цифра — класс:

1xx — информационные (редко видны)

2xx — успех

3xx — перенаправления

4xx — ошибка клиента (ваша вина)

5xx — ошибка сервера (не ваша вина)

Увидеть коды и заголовки любого URL: наш Server Response.

Títulos: o que há de importante neles

Каждый HTTP-запрос и ответ содержит заголовки — метаинформацию. Самые важные:

Заголовки запроса (от клиента)

Заголовки ответа (от сервера)

Посмотреть заголовки вашего или чужого сайта: наш HTTP Headers.

Estrutura de solicitação e resposta HTTP

HTTP-запрос (Request)

GET /article/123 HTTP/1.1              ← стартовая строка (метод, путь, версия)
Host: example.com                       ← заголовки
User-Agent: Mozilla/5.0 (...)
Accept: text/html,application/json
Accept-Language: ru-RU,ru;q=0.9
Cookie: session=abc123
Connection: keep-alive

{тело запроса — обычно для POST/PUT}

HTTP-ответ (Response)

HTTP/1.1 200 OK                         ← стартовая строка (версия, код, текст)
Content-Type: text/html; charset=utf-8  ← заголовки
Content-Length: 1234
Set-Cookie: session=xyz789; HttpOnly
Cache-Control: max-age=300
Strict-Transport-Security: max-age=31536000

<!DOCTYPE html>                        ← тело ответа
<html>
<head>...</head>
<body>...</body>
</html>

Segurança: o que o HTTPS protege

Когда вы заходите на сайт по HTTPS, вы получаете три гарантии:

1. Конфиденциальность

Весь трафик зашифрован. Ни провайдер, ни Wi-Fi в кафе, ни государственный DPI не видят, какие страницы вы открываете и что вводите. Видят только IP сервера и объём трафика.

2. Целостность

Данные не подменены по пути. Если кто-то на маршруте изменит байт в HTTP-ответе — TLS это обнаружит, и браузер покажет ошибку.

3. Аутентификация

Вы точно подключились к google.com, а не к поддельному сайту с похожим доменом. Благодаря сертификату, подписанному доверенным CA.

Что HTTPS НЕ защищает

Инструменты ip.brazya.ru

Часто задаваемые вопросы

Что такое HTTP простыми словами?

HTTP (HyperText Transfer Protocol) — это правила, по которым ваш браузер и сервер сайта обмениваются данными. Когда вы открываете страницу, браузер отправляет HTTP-запрос «дай мне главную страницу», сервер отвечает «вот HTML». Это как диалог по заранее оговорённому формату.

Чем HTTP отличается от HTTPS?

HTTPS — это HTTP + шифрование (TLS/SSL). В HTTP данные идут открытым текстом: кто-то на пути может прочитать пароли, сообщения, номера карт. В HTTPS всё зашифровано: даже если перехватят — увидят только кашу. Сейчас HTTPS обязателен для любого сайта — Google отмечает HTTP-сайты как «Не защищено».

Что такое HTTP/2 и HTTP/3?

HTTP/1.1 — классика с 1997 года, по одному запросу за раз. HTTP/2 (2015) — мультиплексирование, сжатие заголовков, server push. Страница грузится в 2-3 раза быстрее. HTTP/3 (2022) — поверх UDP (QUIC), решает проблему head-of-line blocking, ещё быстрее на мобильных. Сейчас HTTP/2 поддерживают ~70% сайтов, HTTP/3 — ~30%.

Что такое TLS и как он работает?

TLS (Transport Layer Security) — протокол шифрования, лежащий в основе HTTPS. Работает в 3 этапа: 1) клиент и сервер договариваются о шифрах (TLS handshake), 2) обмениваются сертификатами для аутентификации, 3) устанавливают сессионный ключ и шифруют весь трафик. TLS 1.3 (2018) — быстрее handshake, только безопасные шифры, нет уязвимостей старых версий.

Что означают коды 200, 301, 404, 500?

Коды HTTP делятся на 5 классов: 1xx — информационные, 2xx — успех (200 OK, 201 Created), 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).

Безопасен ли HTTP для отправки паролей?

Нет, категорически нет. HTTP передаёт всё открытым текстом — пароль, email, номер карты, сообщения. Любой на пути (Wi-Fi в кафе, провайдер, государственный DPI) увидит. Всегда проверяйте, что в адресной строке https:// и есть замочек. Если сайта нет на HTTPS — вводить пароли нельзя. Браузеры с 2017 года помечают HTTP-формы как «небезопасные».

Можно ли прослушать HTTPS-трафик?

В теории — нет, если всё настроено правильно (TLS 1.3, валидные сертификаты). На практике — есть MITM через установку корневого сертификата (например, корпоративный прокси, антивирус Kaspersky). Также государства могут выдавать себя за сайт через BGP hijack + фейковый сертификат (практически не встречается). Если в браузере нет ошибки сертификата — соединение защищено.

👉 Посмотреть HTTP-заголовки → — узнайте версию HTTP, сервер, кеширование, security headers любого сайта.