Налаштування стиснення Brotli для 1С-Бітрікс: nginx та Apache

Сайт на 1С-Бітрікс з каталогом на 50 000 товарів — типовий випадок, коли Gzip уже встановлений, а сторінки все одно завантажуються 4–5 секунд на 3G. Налаштування Brotli для 1С-Бітрікс знімає до 20% розміру відповіді без жодної зміни в коді. Для CSS і JS різниця ще помітніша: бандл 400 КБ після Gzip
Послуги, які ми пропонуємо
Показано 1 з 1Усі 1626 послуг
Налаштування стиснення Brotli для 1С-Бітрікс: nginx та Apache
Простий
~1 день

Наші компетенції:

Часті запитання

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1460
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Розробка веб-сайту для компанії ФІКСПЕР
    1019
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Розробка на базі Бітрікс, Бітрікс24, 1С для компанії Development of an Online
    763
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    882
  • image_crm_dolbimby_434_0.webp
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    809
  • image_crm_technotorgcomplex_453_0.webp
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    1164

Сайт на 1С-Бітрікс з каталогом на 50 000 товарів — типовий випадок, коли Gzip уже встановлений, а сторінки все одно завантажуються 4–5 секунд на 3G. Налаштування Brotli для 1С-Бітрікс знімає до 20% розміру відповіді без жодної зміни в коді. Для CSS і JS різниця ще помітніша: бандл 400 КБ після Gzip — 110 КБ, після Brotli — 90–95 КБ. На повільних з'єднаннях це дає секунди економії, знижує витрати на трафік до 30% і покращує конверсію інтернет-магазину. Економія на трафіку може становити до 30%, що при високій відвідуваності дає суттєве скорочення витрат. Ми впроваджуємо Brotli на проектах від лендінгів до складних каталогів і завжди отримуємо вимірюваний приріст швидкості.

Відповідно до документації Google, Brotli забезпечує на 20% краще стиснення, ніж Gzip для текстового контенту. Економія на CDN-трафіку досягає 20%.

Чому Brotli ефективніший за Gzip?

Алгоритм Brotli використовує складніший словник і контекстне моделювання, що дає перевагу на повторюваних даних. Типовий HTML-шаблон Бітрікса з повторюваними класами та коментарями стискається на 18% щільніше. Ціна — трохи більший час компресії на високих рівнях. Рекомендуємо brotli_comp_level 6 для динаміки: баланс між стисненням і навантаженням на CPU. Рівень 11 (+5–8% стиснення) виправданий лише для pre-compressed статики.

Таблиця порівняння:

Тип контенту Без стиснення Gzip (level 6) Brotli (level 6) Brotli (level 11)
HTML-сторінка 180 КБ 32 КБ 29 КБ 27 КБ
JS-бандл 400 КБ 110 КБ 98 КБ 93 КБ
CSS-бандл 150 КБ 38 КБ 34 КБ 31 КБ

Як налаштувати Brotli для 1С-Бітрікс?

Покрокова інструкція

  1. Встановлення модуля ngx_brotli
  2. Конфігурація nginx
  3. Pre-compressed статика
  4. Перевірка

Встановлення модуля Brotli для nginx

Nginx не підтримує Brotli з коробки — потрібен модуль ngx_brotli. Два шляхи:

# Компіляція з вихідних кодів або готовий пакет cd /usr/local/src git clone --recurse-submodules https://github.com/google/ngx_brotli.git nginx -v wget http://nginx.org/download/nginx-1.24.0.tar.gz tar -xzf nginx-1.24.0.tar.gz cd nginx-1.24.0 ./configure --with-compat --add-dynamic-module=/usr/local/src/ngx_brotli make modules cp objs/ngx_http_brotli_filter_module.so /etc/nginx/modules/ cp objs/ngx_http_brotli_static_module.so /etc/nginx/modules/ # Альтернатива для Debian/Ubuntu: # add-apt-repository ppa:ondrej/nginx # apt update # apt install libnginx-mod-http-brotli 

Конфігурація nginx для Бітрікс

# /etc/nginx/nginx.conf — в блоці http load_module modules/ngx_http_brotli_filter_module.so; load_module modules/ngx_http_brotli_static_module.so; http { # Brotli динамічне стиснення brotli on; brotli_comp_level 6; brotli_types text/html text/css text/javascript application/javascript application/json application/xml text/xml image/svg+xml font/woff2; # Статичні pre-compressed файли brotli_static on; # Gzip як fallback для браузерів без Brotli gzip on; gzip_comp_level 6; gzip_types text/html text/css application/javascript; gzip_vary on; } 

brotli_static on — nginx шукає файл assets/app.js.br поруч з assets/app.js. Якщо знайдено, віддає готовий архів без витрат CPU. Це особливо корисно для статики Бітрікс — JS-бандлів та CSS-збірок, які рідко змінюються.

Pre-compressed файли для статики Бітрікс

Для CSS/JS бандлів готуємо .br-файли заздалегідь:

# Встановлюємо brotli CLI та стискаємо всі JS/CSS apt install brotli find /var/www/bitrix/public -name "*.js" -o -name "*.css" | while read f; do brotli --best --keep "$f" done 

Додаємо в деплой-скрипт: після збірки фронтенду автоматично генеруємо .br-файли.

Перевірка роботи

curl -sI -H "Accept-Encoding: br" https://site.ru/bitrix/js/main/core/core.js | grep -i content-encoding # Очікувана відповідь: Content-Encoding: br curl -s -H "Accept-Encoding: identity" https://site.ru/css/app.css | wc -c curl -s -H "Accept-Encoding: br" https://site.ru/css/app.css | wc -c 

Apache mod_brotli

Якщо Бітрікс працює на Apache без nginx-фронтенду:

LoadModule brotli_module modules/mod_brotli.so <IfModule mod_brotli.c> AddOutputFilterByType BROTLI_COMPRESS text/html text/css application/javascript BrotliCompressionLevel 6 </IfModule> 

mod_brotli входить в Apache 2.4.26+. На старих серверах Бітрікс-оточення (Apache 2.2) Brotli недоступний — потрібен апгрейд або перехід на nginx.

Що входить в роботу з налаштування?

Наші спеціалісти з досвідом понад 5 років та 40+ проектами на Бітрікс виконують:

Етап Дія Результат
Аудит Перевірка конфігурації веб-сервера, версій ПЗ, доступів Список необхідних змін
Встановлення модуля Компіляція або встановлення пакета ngx_brotli Модуль додано в nginx
Налаштування стиснення Конфігурація brotli, gzip як fallback, pre-compressed статика Робоче стиснення на всіх типах контенту
Тестування Перевірка curl, PageSpeed, VPN-емуляція повільних мереж Звіт з метриками до/після
Документація Інструкція з деплою, рекомендації щодо рівнів стиснення Передані артефакти
Підтримка Моніторинг протягом 2 тижнів Стабільна робота

Терміни — від 1 до 3 днів залежно від складності інфраструктури. Вартість розраховується індивідуально після попередньої оцінки. Зв'яжіться з нами для безкоштовної консультації — обговоримо ваш сервер і підберемо оптимальну конфігурацію. Замовте налаштування Brotli та отримайте гарантований результат.

Які типові помилки виникають при налаштуванні Brotli?

  • Пропущений модуль brotli_static. Якщо не включена опція brotli_static on, nginx не буде шукати pre-compressed файли, і статика стискатиметься динамічно, навантажуючи CPU.
  • Неправильні MIME-типи. Не вказані image/svg+xml або font/woff2 — вони залишаться без стиснення. Перевірте повний список у конфігурації.
  • Забутий fallback Gzip. Браузери без підтримки Brotli (застарілі) не отримають стиснений контент. Завжди вмикайте gzip on з gzip_vary on.
  • Високий рівень стиснення для динаміки. Рівень 11 збільшує затримку компресії. Для динамічних сторінок достатньо 6.

На Бітрікс-проектах зазвичай комбінують Brotli для сучасних браузерів і Gzip для fallback. Це дає максимальне покриття без втрати продуктивності.

Чому варто довірити налаштування нам?

Ми впроваджуємо Brotli з гарантією вимірюваного приросту швидкості: ви отримаєте графіки порівняння до та після. На рахунку команди — десятки успішних кейсів прискорення сайтів на 1С-Бітрікс. У роботі використовуємо лише офіційні репозиторії (див. Wikipedia та GitHub). Жодних сторонніх скриптів — лише перевірені інструменти. Залиште заявку на аудит інфраструктури та отримайте індивідуальну конфігурацію.