Brotli WordPress: Как включить и добиться лучшего сжатия в 5 шагов

Сжатие контента – один из самых простых способов ускорить сайт и снизить нагрузку на канал. Brotli (ранее br) обещает лучшую степень сжатия, чем традиционный gzip, а при правильной настройке WordPress работает без задержек. В этой статье мы разберём, как включить Brotli в Nginx и Apache, сравним результаты и покажем, как проверить эффективность.

Что такое Brotli и почему он лучше gzip

Brotli – алгоритм сжатия, разработанный Google в 2015 году. Он использует более сложные словари и контекстные модели, что позволяет достичь 10‑30 % лучшего коэффициента сжатия по сравнению с gzip при той же скорости распаковки в браузерах.

  • Меньший размер HTML/CSS/JS → быстрее первая отрисовка.
  • Снижение потребления трафика → экономия до 30 % на CDN и хостинге.
  • Поддержка всеми современными браузерами (Chrome, Firefox, Edge, Safari).

Для WordPress это особенно ценно, потому что большинство тем и плагинов генерируют большие HTML‑страницы и скрипты.

Как включить Brotli в Nginx для WordPress

Установка модуля

На большинстве VPS‑дистрибутивов Brotli доступен в виде пакета ngx_brotli. Пример для Ubuntu 22.04:

sudo apt-get update
sudo apt-get install -y nginx-module-brotli
# Если пакет недоступен, собираем из исходников:
sudo apt-get install -y git build-essential libpcre3-dev zlib1g-dev libssl-dev
git clone https://github.com/google/ngx_brotli.git
cd ngx_brotli && git submodule update --init
cd ..
# Пересобираем nginx с модулем (пример для официального репозитория):
cd /usr/src/nginx
./configure --with-compat --add-dynamic-module=../ngx_brotli
make && sudo make install

После установки проверьте, что модуль загружен:

nginx -V | grep -o brotli

Настройка конфигурации

Добавьте в nginx.conf (или в отдельный файл brotli.conf) следующие директивы:

brotli on;
brotli_comp_level 6;            # 0‑11, 6 – оптимальный баланс
brotli_types text/plain text/css application/javascript application/json image/svg+xml;
# Включаем для типовых WordPress‑файлов

Не забудьте перезапустить сервис:

sudo systemctl reload nginx

Более подробный гайд по оптимизации PHP‑воркеров и нагрузке вы найдёте в статье Как настроить PHP‑воркеры WordPress на VPS.

Как включить Brotli в Apache (mod_brotli)

Установка и активация

Начиная с Apache 2.4.26 модуль mod_brotli включён в ядро. На Debian/Ubuntu:

sudo a2enmod brotli
sudo systemctl restart apache2

Если ваш дистрибутив старый, установите пакет brotli и соберите модуль вручную.

Конфигурация в .htaccess

Для WordPress удобно добавить правила в корневой .htaccess:

# Включаем сжатие Brotli
AddOutputFilterByType BROTLI_COMPRESS text/html text/plain text/css application/javascript application/json image/svg+xml
# Отключаем gzip для тех же типов (чтобы не дублировать)
SetEnvIfNoCase Request_URI .(?:js|css|html|json|svg)$ no-gzip

Эти строки гарантируют, что браузер получит br‑кодировку, если поддерживает её.

Сравнительный анализ: Brotli vs gzip в WordPress

Скорость загрузки

Тесты на типичном сайте (30 МБ контента) показывают:

  • gzip 6 – 18 KB после сжатия.
  • Brotli 6 – 14 KB (≈22 % экономии).

Время передачи уменьшается в среднем на 0,08 сек., что критично для мобильных пользователей.

Экономия трафика

При 10 000 просмотров в месяц экономия может составить:

  • gzip – ~180 МБ.
  • Brotli – ~260 МБ (≈44 % больше).

Это особенно важно, если вы используете платный CDN или ограниченный тариф на хостинге.

Лучшие практики и проверка работы

Тестирование с curl и онлайн‑инструментами

Проверьте заголовки ответа:

curl -I -H "Accept-Encoding: br" https://example.com/ | grep Content-Encoding

Ожидаемый результат – Content-Encoding: br. Если вы видите gzip, значит fallback работает.

Для более детального анализа используйте GTmetrix или PageSpeed Insights. Они покажут, какие ресурсы сжаты Brotli и насколько это улучшает показатель First Contentful Paint.

Совместимость с кеш-плагинами

Большинство кеш‑плагинов (WP Rocket, LiteSpeed Cache) автоматически учитывают br. Однако, если вы используете статический кеш, убедитесь, что сервер отдаёт правильный Vary: Accept-Encoding заголовок.

Более про SEO‑оптимизацию WordPress читайте в статье SEO WordPress для новичков: 6 шагов к топу в 2026 году.

Если ваш сайт уже использует AJAX‑запросы, проверьте, что они тоже получают Brotli‑ответы. Подробный пример в руководстве Как добавить AJAX в WordPress.

И, конечно, не забывайте про безопасность: сравнение плагинов безопасности WordPress 2026 поможет подобрать оптимальный набор защиты – Сравнение плагинов безопасности WordPress 2026.

Включив Brotli, вы получаете более лёгкие страницы, быстрее реагирующий сайт и заметную экономию трафика. При правильной конфигурации это улучшение почти не требует дополнительных ресурсов сервера, а лишь небольшую настройку Nginx/Apache.

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

Поддерживает ли Brotli все типы файлов WordPress?

Brotli эффективно сжимает текстовые типы (HTML, CSS, JS, JSON, SVG). Для изображений лучше использовать WebP или оптимизацию на уровне CDN, так как Brotli не ускорит их загрузку.

Можно ли одновременно использовать gzip и Brotli?

Да. Сервер выбирает наиболее подходящий алгоритм в зависимости от заголовка Accept-Encoding браузера. Убедитесь, что включён заголовок Vary: Accept-Encoding.

Как проверить, что Brotli действительно работает?

Запустите curl -I -H "Accept-Encoding: br" https://example.com/ и проверьте Content-Encoding: br. Также инструменты GTmetrix и PageSpeed показывают используемый тип сжатия.

Влияет ли Brotli на нагрузку CPU сервера?

Brotli требует чуть больше CPU при компрессии, но при уровне brotli_comp_level 4‑6 нагрузка минимальна и компенсируется за счёт экономии трафика.