Создать URL
Генератор Правила транслитерации Как сделать ЧПУ Блог Вопросы и ответы Создать URL
Разбор

Редиректы и время до первого байта

Продолжаем разговор о скорости конкретным показателем, на который редиректы влияют сильнее всего, — временем до первого байта.

Из чего складывается время до первого байта

Время до первого байта (TTFB) — период от начала запроса до получения первых данных ответа. Оно состоит из нескольких этапов, и на каждом можно потерять время.

Составляющие времени до первого байта
ЭтапЧто происходитНа что влияет
Поиск адреса сервераОпределяется IP-адрес по имениСкорость DNS
Установка соединенияСоединение и согласование шифрованияРасстояние до сервера, протокол
РедиректыКаждый — новый цикл запроса и ответаЧисло переходов
Обработка на сервереФормирование страницыПроизводительность сервера и кеш
Передача первого байтаОтвет отправляется клиентуСеть и близость CDN

Как измерить потери

Простой способ — посмотреть время до первого байта с учётом всех редиректов утилитой командной строки:

curl -o /dev/null -s -L -w "redirects: %{num_redirects}, ttfb: %{time_starttransfer}\n" http://example.ru/

Если число редиректов больше одного или время заметно выше, чем при прямом обращении по конечному адресу, значит, часть времени теряется на переходах.

Как складываются задержки

ЗапросhttpРедирект+1 обменРедирект+1 обменПервый байтстраницы
ЗапросhttpРедирект+1 обменРедирект+1 обменПервый байтстраницы
Каждый редирект добавляет отдельный обмен с сервером

Как ускорить

  • Один переход вместо цепочки. Перенаправляйте сразу на конечный протокол и домен.
  • Серверные редиректы вместо программных. Правило веб-сервера срабатывает быстрее, чем перенаправление внутри приложения, которому нужно сначала запуститься.
  • Правильные внутренние ссылки. Ссылайтесь на канонические адреса, чтобы посетители не проходили редирект вовсе.
  • Кеширование постоянных редиректов. Браузер запоминает ответ 301 и при повторном визите не обращается к серверу.

Роль HSTS

Заголовок HSTS сообщает браузеру, что сайт всегда нужно открывать по защищённому протоколу. После первого визита браузер сам подставляет https и уже не тратит время на редирект с http. Включать HSTS стоит только когда защищённый вариант полностью настроен: подробности — в статье про заголовки безопасности.

Связано с индексацией: лишние редиректы замедляют не только людей, но и робота, как описано в статье про выбор кода редиректа и влияние адресов на скорость.

Пример сравнения до и после

Условный пример сокращения числа обращений
СценарийЧисло редиректовЧто происходит
До: цепочка http → https → www2Три обращения до получения страницы
После: прямой переход на конечный адрес1Два обращения
После плюс HSTS и правильные внутренние ссылки0 при повторном визитеОдно обращение к странице

Другие причины медленного ответа

  • Тяжёлые запросы к базе данных при формировании страницы.
  • Отсутствие серверного кеширования для типовых страниц.
  • Удалённое расположение сервера относительно основной аудитории.
  • Перегруженный хостинг — об этом подробнее в статье про хостинг и техническое SEO.

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

Что такое время до первого байта?

Период от начала запроса до получения первых данных ответа; в него входят поиск адреса, соединение, редиректы и обработка на сервере.

Почему серверные редиректы быстрее программных?

Правило веб-сервера срабатывает до запуска приложения, а программному редиректу приходится ждать, пока приложение начнёт работать.

Помогает ли HSTS ускорить сайт?

Да, после первого визита браузер сам открывает защищённый вариант и не тратит время на редирект с http.

Готовый адрес можно собрать прямо сейчас: откройте генератор ЧПУ — он транслитерирует фразу по таблице Яндекса, уберёт служебные слова и покажет длину адреса.

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