Как работает сжатие HTML и других текстовых ответов сервера
Сервер, поддерживающий сжатие, перед отправкой ответа упаковывает текстовое содержимое — HTML, CSS, JavaScript — в компактный сжатый формат, который браузер или робот автоматически распаковывает при получении, что заметно сокращает объём передаваемых по сети данных.
Различие между распространёнными алгоритмами сжатия gzip и brotli
Gzip — давно устоявшийся, повсеместно поддерживаемый стандарт сжатия, тогда как более современный алгоритм brotli при сопоставимой скорости обычно обеспечивает заметно более высокую степень сжатия, из-за чего многие современные серверы поддерживают оба варианта одновременно.
Прямая связь сжатия со скоростью обхода сайта роботом
Меньший объём передаваемых данных означает более быструю загрузку каждой отдельной страницы, а значит — при том же выделенном на сайт времени обхода робот успевает обработать заметно больше страниц за один визит, чем при отдаче несжатого содержимого.
Как быстро проверить, включено ли сжатие на сайте
Вкладка «Сеть» в инструментах разработчика браузера показывает заголовок Content-Encoding у ответа сервера — его отсутствие или значение, отличное от gzip и br, сигнализирует, что сжатие для этого ресурса не включено и стоит донастроить его на уровне сервера.
Почему не стоит дополнительно сжимать уже сжатые форматы файлов
Изображения в форматах JPEG и WebP, а также видео и архивы уже содержат встроенное сжатие, поэтому попытка применить к ним ещё и серверное текстовое сжатие обычно не даёт заметного выигрыша в размере, а иногда даже немного увеличивает итоговый объём за счёт служебных накладных расходов формата сжатия.
Баланс между степенью сжатия и дополнительной нагрузкой на процессор сервера
Более высокий уровень сжатия уменьшает объём передаваемых данных, но требует больше вычислительных ресурсов сервера на сам процесс сжатия — для большинства сайтов разумен средний уровень сжатия, дающий значительную часть выигрыша в размере при умеренной дополнительной нагрузке на сервер.
Убедиться, что сжатие корректно работает именно для запросов робота
Некоторые серверные конфигурации ошибочно включают сжатие только для определённых типов клиентов или User-Agent — стоит отдельно проверить заголовки ответа именно на запрос, эмулирующий поискового робота, а не полагаться исключительно на проверку через обычный браузер.
Особая ценность сжатия для пользователей на медленном мобильном соединении
Выигрыш от включённого сжатия особенно заметен именно на нестабильном или медленном мобильном соединении, где каждый лишний килобайт передаваемых данных ощутимо сказывается на итоговом времени загрузки страницы, что делает эту настройку особенно значимой для сайтов с преимущественно мобильной аудиторией.
Сжатие ответов не только HTML-страниц, но и данных API
Если сайт активно использует запросы к собственному API для подгрузки части содержимого без перезагрузки страницы, включение сжатия для ответов именно этого API отдельно от основных страниц тоже способно заметно ускорить восприятие сайта пользователем, особенно при большом объёме передаваемых структурированных данных.
Частые вопросы
Даёт ли сжатие ответов сервера прирост в позициях сайта?
Напрямую сжатие не является фактором ранжирования, но ускоряя загрузку страниц, оно косвенно улучшает пользовательский опыт и эффективность использования бюджета обхода.
Есть ли риски от включения сжатия на сайте?
Практических рисков для типового сайта нет — сжатие поддерживается всеми современными браузерами и поисковыми роботами и включается на уровне настроек сервера без изменения самого содержимого.
Что лучше использовать — gzip или brotli?
При наличии выбора brotli обычно предпочтительнее за счёт более высокой степени сжатия, но многие серверы сегодня умеют автоматически выбирать наиболее подходящий вариант под конкретный клиент.
Готовый адрес можно собрать прямо сейчас: откройте генератор ЧПУ — он транслитерирует фразу по таблице Яндекса, уберёт служебные слова и покажет длину адреса.