В современном интернете скорость загрузки сайта – это не просто “приятный бонус” для пользователя, а реальный фактор ранжирования в поисковых системах и важный параметр для удержания посетителей. Один из самых простых и эффективных способов ускорить свой сайт — использовать сжатие на уровне веб-сервера.
Недавно мы запустили в FastRank новый модуль для проверки методов сжатия. Рассказываем, зачем он нужен, как работает сжатие и как включить современные методы сжатия — Brotli и gzip — на своём сайте.
Когда пользователь открывает сайт, браузер отправляет серверу заголовок Accept-Encoding
— в нём перечислены методы сжатия, которые браузер поддерживает (например, gzip
, br
, deflate
).
Если сервер умеет сжимать данные одним из этих методов, он возвращает сжатую версию страницы, а в ответе указывает заголовок Content-Encoding
. Браузер автоматически распаковывает этот контент и показывает страницу пользователю.
Пример “рукопожатия” сжатия:
Запрос браузера:
Accept-Encoding: br, gzip, deflate
Ответ сервера:
Content-Encoding: br
В результате — меньше трафика, быстрее загрузка страниц.
Brotli (br) — современный алгоритм, даёт максимальное сжатие. Поддерживается всеми актуальными браузерами. Рекомендуется в первую очередь.
gzip — стандарт, поддерживается абсолютно везде, чуть менее эффективен, чем Brotli.
deflate, compress — устаревшие, используются редко, почти не дают выигрыша по сравнению с gzip.
identity — без сжатия (то есть ничего не делается).
Лучший выбор: включить оба — Brotli (для новых браузеров) и gzip (для совместимости со старыми).
Всё просто — используйте наш модуль Проверка методов сжатия.
Введите адрес сайта, и сервис сразу покажет — какие методы поддерживаются, что включено, и даст рекомендации.
Рассмотрим самые частые случаи: Nginx, Apache, и популярные CMS.
# В http{} или server{} или location{}
gzip on;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
gzip_min_length 256;
gzip_vary on;
gzip_comp_level 5;
Включаем Brotli (нужен модуль ngx_brotli):
brotli on;
brotli_comp_level 5;
brotli_types text/plain text/css application/javascript application/json image/svg+xml application/xml+rss;
Brotli требует дополнительного модуля, обычно его можно установить через пакет brotli или собрать Nginx с поддержкой brotli.
# В файле .htaccess или конфиге сервера
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/plain text/html text/xml text/css application/javascript application/json
</IfModule>
Включаем Brotli (Apache 2.4.26+):
<IfModule mod_brotli.c>
AddOutputFilterByType BROTLI_COMPRESS text/html text/plain text/css application/json application/javascript
</IfModule>
Убедитесь, что модули mod_deflate и mod_brotli подключены (можно проверить через apachectl -M
).
На большинстве CMS (WordPress, Joomla, Drupal) gzip можно включить через плагины, или просто настроить .htaccess/Nginx-конфиг. Для Brotli чаще всего потребуется помощь хостинга или VPS, где есть поддержка brotli.
После настройки обязательно перепроверьте сайт — достаточно снова зайти в FastRank → Проверка методов сжатия.
Если Brotli включён, вы увидите зелёную галочку напротив “Brotli”, если нет — есть смысл спросить у хостинга или почитать документацию для вашего сервера.
Включить Brotli/Gzip — это сложно?
В большинстве случаев нет — достаточно добавить 2-5 строк в конфиг. В некоторых случаях потребуется доустановить модуль или обратиться к поддержке хостинга.
Почему мой сайт всё равно “не сжат”?
Проверьте, не мешают ли сторонние прокси, CDN (Cloudflare, Fastly и др.), или не конфликтуют ли настройки.
Нужно ли включать все методы сжатия?
Нет, достаточно Brotli и gzip. Остальные — устарели и не нужны.