Перейти к содержанию
Innovialabs

Что происходит, когда вы вводите адрес сайта и жмёте Enter

Основы3 мин

Коротко

Браузер находит IP через DNS, устанавливает защищённое соединение (TCP + TLS), отправляет HTTP-запрос, получает HTML, догружает CSS, JS и картинки, а затем строит и рисует страницу.

Короткий ответ: шесть этапов за доли секунды

После нажатия Enter браузер проходит цепочку шагов:

  1. Разбирает адрес и проверяет кэш.
  2. DNS — узнаёт IP-адрес сервера по имени домена.
  3. TCP — устанавливает соединение с сервером.
  4. TLS — договаривается о шифровании (для HTTPS).
  5. HTTP — отправляет запрос и получает ответ.
  6. Рендеринг — превращает HTML, CSS и JavaScript в пиксели на экране.

Каждый этап занимает время, и понимание цепочки помогает искать, почему сайт грузится медленно.

Шаг 1. Разбор адреса и кэш

Браузер решает, что вы ввели: адрес или поисковый запрос. Если адрес — он проверяет, нет ли нужных данных в кэше: сохранённой страницы, файлов или уже известного IP. Если есть и они актуальны, часть следующих шагов пропускается.

Шаг 2. DNS: поиск IP-адреса

Компьютеры общаются по IP-адресам, а не по именам. Браузер спрашивает DNS-резолвер (обычно у провайдера или публичный), какой IP у домена. Если резолвер не знает ответа, он по цепочке опрашивает корневые серверы, серверы доменной зоны (например, .uz или .com) и наконец авторитетный сервер вашего домена.

Ответ кэшируется на время, указанное в записи (TTL), поэтому повторные визиты быстрее.

Шаг 3–4. TCP и TLS: соединение и шифрование

  • TCP-рукопожатие — клиент и сервер обмениваются служебными пакетами и подтверждают, что готовы к передаче данных.
  • TLS-рукопожатие — сервер предъявляет сертификат, браузер проверяет, что он выдан доверенным центром и подходит для этого домена. Затем стороны согласуют ключи шифрования.

Если сертификат просрочен или не совпадает с доменом, браузер покажет предупреждение и не откроет страницу без вашего согласия. Новые версии протоколов (HTTP/2, HTTP/3) сокращают число таких обменов и позволяют передавать много файлов по одному соединению.

Шаг 5. HTTP-запрос и ответ сервера

Браузер отправляет запрос вида:

GET / HTTP/1.1
Host: example.com
Accept: text/html

Сервер (часто через CDN и обратный прокси вроде nginx) передаёт запрос приложению. Приложение может сходить в базу данных, собрать страницу и вернуть ответ с кодом статуса (200, 301, 404, 500) и HTML в теле.

На этом этапе важна скорость ответа сервера — TTFB (время до первого байта). Медленные запросы к базе или отсутствие кэша на сервере сказываются здесь.

Шаг 6. Разбор и отрисовка страницы

Получив HTML, браузер:

  1. Строит DOM — дерево элементов страницы.
  2. Находит ресурсы — CSS, JavaScript, шрифты, картинки — и запрашивает их.
  3. Строит CSSOM — модель стилей. Пока CSS не загружен, браузер обычно не рисует контент, чтобы не показать «голую» страницу.
  4. Выполняет JavaScript. Обычный <script> останавливает разбор HTML, поэтому скрипты подключают с defer или async.
  5. Layout — рассчитывает размеры и позиции элементов.
  6. Paint и composite — рисует пиксели и собирает слои на экране.

После этого страница видна, но JavaScript может продолжать догружать данные и делать её интерактивной.

Где чаще всего теряется скорость

ЭтапТипичная причина задержки
DNSМедленный DNS-провайдер, маленький TTL
TCP/TLSСервер далеко от пользователя, нет CDN
Ответ сервераТяжёлые запросы к базе, нет кэширования
Загрузка ресурсовБольшие картинки, лишние скрипты и шрифты
РендерингБлокирующий JavaScript, сложная вёрстка

Частые вопросы

Браузер уже знает IP домена, может переиспользовать соединение и берёт из кэша CSS, скрипты и картинки. Сервер же отдаёт только то, что изменилось.

Поможем с этим

Если хотите не разбираться самим, а получить результат — этим мы занимаемся каждый день.

Обсудить проект

Читайте также

Есть идея или задача? Расскажите нам

Ответим в течение рабочего дня и предложим решение. Консультация бесплатная.