Налаштування HTTP/2 для 1С-Бітрікс: оптимізація TTI

Оптимізація 1С-Бітрікс з HTTP/2 Уявіть: сайт на Бітрікс завантажується 4 секунди, хоча сервер потужний і кешування ввімкнено. Проблема в протоколі — HTTP/1.1 відкриває 6-8 паралельних TCP-з'єднань і завантажує ресурси послідовно. При 40+ файлах на сторінці виникає черга очікування через head-of-l
Послуги, які ми пропонуємо
Показано 1 з 1Усі 1626 послуг
Налаштування HTTP/2 для 1С-Бітрікс: оптимізація TTI
Простий
~1 день

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

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

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

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1457
  • 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
    761
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    879
  • image_crm_dolbimby_434_0.webp
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    804
  • image_crm_technotorgcomplex_453_0.webp
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    1162

Оптимізація 1С-Бітрікс з HTTP/2

Уявіть: сайт на Бітрікс завантажується 4 секунди, хоча сервер потужний і кешування ввімкнено. Проблема в протоколі — HTTP/1.1 відкриває 6-8 паралельних TCP-з'єднань і завантажує ресурси послідовно. При 40+ файлах на сторінці виникає черга очікування через head-of-line blocking. HTTP/2 вирішує це мультиплексуванням: усі запити йдуть по одному TLS-з'єднанню, сервер відповідає без затримки підключення. Це знижує TTI (Time to Interactive) на 200-400 мс — реальні цифри з наших проєктів. Ми налаштовуємо HTTP/2 під ключ: аудит, конфігурація, оптимізація.

Чому HTTP/2 критичний для 1С-Бітрікс?

Бітрікс — система з величезною кількістю підключених модулів: bitrix.js, core.css, десятки скриптів у /bitrix/js/. При HTTP/1.1 кожен файл потребує свого з'єднання та повного handshake. HTTP/2 вирішує проблему мультиплексуванням. Це особливо важливо для інтернет-магазинів на Бітрікс з каталогами на 100 000+ товарів. За нашими вимірами, HTTP/2 прискорює завантаження сторінки до 2 разів порівняно з HTTP/1.1 при типовому наборі ресурсів.

Характеристика HTTP/1.1 HTTP/2
Число з'єднань 6-8 на домен 1 на домен
Завантаження ресурсів Послідовне Паралельне
Заголовки Без стиснення HPACK (стиснення)
Server Push Ні Так
TTI на Бітрікс ~1.2 с (типовий) ~0.8 с

Як налаштувати HTTP/2: основні кроки

  1. Встановлення SSL-сертифіката — HTTP/2 у браузерах працює тільки через TLS.
  2. Перевірка версії Nginx — потрібна 1.9.5+ з модулем http_v2. Команда: nginx -V 2>&1 | grep http_v2.
  3. Зміна конфігурації віртуального хоста — додавання http2 у listen 443 ssl http2;.
  4. Налаштування Server Push — для критичних ресурсів (CSS і JS ядра Бітрікс).
  5. Тестування — через curl -I --http2 та Chrome DevTools.

Вимоги для HTTP/2

HTTP/2 працює тільки поверх TLS у браузерах (h2c не підтримується). Тому обов'язковий валідний SSL-сертифікат. Nginx має бути зібраний з модулем http_v2:

nginx -V 2>&1 | grep "http_v2" # Має бути: --with-http_v2_module 

OpenSSL потрібна версія 1.0.2+ для ALPN.

Конфігурація Nginx для HTTP/2

У конфігу віртуального хоста:

server { listen 443 ssl http2; listen [::]:443 ssl http2; server_name example.ru www.example.ru; ssl_certificate /etc/ssl/certs/example.ru.crt; ssl_certificate_key /etc/ssl/private/example.ru.key; # Сучасні cipher suites (HTTP/2 забороняє застарілі) ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384; ssl_prefer_server_ciphers off; # HSTS add_header Strict-Transport-Security "max-age=63072000" always; # Оптимізація TLS ssl_session_cache shared:SSL:10m; ssl_session_timeout 1d; ssl_session_tickets off; root /var/www/bitrix/public_html; index index.php; } # Редирект HTTP -> HTTPS server { listen 80; server_name example.ru www.example.ru; return 301 https://$host$request_uri; } 

Як працює Server Push і навіщо він Бітрікс?

Server Push дозволяє серверу надіслати CSS і JS до того, як браузер їх запитає. Для Бітрікс це має сенс для головного CSS та основного JS-бандла. На одному проєкті з каталогом на 200 000 товарів ми через Server Push знизили TTI з 1.7 с до 0.6 с. Налаштування в Nginx:

location = / { http2_push /bitrix/templates/.default/styles.css; http2_push /bitrix/js/main/core/core.js; http2_push /bitrix/themes/.default/icons/sm/logo.png; } 

Або через заголовки Link з PHP при ввімкненому http2_push_preload on.

Рекомендовані налаштування Nginx для HTTP/2

Параметр Рекомендоване значення Пояснення
keepalive_timeout 65 Таймаут keep-alive
http2_chunk_size 8k Розмір фрейму даних
http2_max_concurrent_streams 128 Максимум одночасних потоків
http2_recv_buffer_size 256k Розмір буфера прийому

Перевірка роботи HTTP/2

curl -I --http2 https://example.ru/ # Очікуємо: HTTP/2 200 

У Chrome DevTools колонка Protocol має показувати h2.

Типова проблема: Mixed Content

Після переходу на HTTPS + HTTP/2 Бітрікс може генерувати посилання http://.... Це блокується браузером. Перевірте dbconn.php:

$_SERVER["HTTPS"] = "on"; define("SITE_SERVER_NAME", "example.ru"); 

І в налаштуваннях головного модуля позначте «Використовувати захищене з'єднання (https)».

Порівняння з HTTP/1.1

HTTP/2 дає приріст швидкості в 2-4 рази при великій кількості файлів. Для Бітрікс це особливо актуально: типова сторінка містить 30-50 ресурсів. З HTTP/2 час до першого інтерактивного стану скорочується на 200-400 мс, що позитивно впливає на SEO та конверсію.

Що входить у налаштування HTTP/2 під ключ

  • Аудит поточної конфігурації сервера та сайту (Nginx, PHP, Бітрікс).
  • Встановлення або валідація SSL-сертифіката (включаючи ланцюжок).
  • Налаштування віртуального хоста з HTTP/2, сучасними cipher suites та HSTS.
  • Оптимізація Server Push для критичних ресурсів (core.css, core.js).
  • Перевірка Mixed Content та виправлення посилань у налаштуваннях Бітрікс.
  • Тестування продуктивності: замір TTI до та після.
  • Документація щодо конфігурації та рекомендації з моніторингу.

Терміни: від 1 дня до 5 днів залежно від складності та кількості хостів. Вартість розраховується індивідуально після аудиту.

Чому варто замовити налаштування у нас?

Ми налаштовували HTTP/2 для Бітрікс-проєктів з навантаженням до 50 000 відвідувачів на добу. Досвід — понад 5 років і 80+ проєктів. Гарантуємо сумісність з усіма актуальними версіями Nginx та PHP. Замовте аудит — отримайте консультацію та розрахунок вартості протягом дня. Зв'яжіться з нами для деталей.

RFC 7540 — HTTP/2 HTTP/2 на Wikipedia