3.2.9 Как включить протокол HTTP/2
Протокол HTTP/2 является новой версией транспортного протокола HTTP для передачи данных веб-сайтов в сети Интернет.
Основными преимуществами нового протокола HTTP/2, по сравнению с предшествующими версиями, можно выделить:
- Уменьшенная нагрузка на сеть;
- Низкие затраты на парсинг данных;
- Улучшенная производительность;
- Более эффективная обработка данных между клиентом и сервером;
- Обратная совместимость с HTTP/1.x.
Детально с принципами работы и преимуществами HTTP/2 можно ознакомиться в следующем материале.
Ниже мы рассмотрим способы активации использования HTTP/2 на shared-хостинге TheHost и на виртуальных/выделенных серверах с установленным веб-сервером Nginx от версии 1.9.5 и выше.
Учтите: независимо от сервера, протокол HTTP/2 требует подключенного к сайту SSL-сертификата для своего функционирования. Подойдет как коммерческий так и бесплатный SSL.
Важно: при включении HTTP/2 хотя бы для одного домена на Вашем хостинге/сервере, он автоматически активируется и для всех остальных доменов на этом же IP-адресе. Обойти это ограничение нет возможности, так как оно сопряжено с техническими принципами реализации данного протокола.
Включение протокола HTTP/2 хостинге
Наш хостинг полностью поддерживает использование HTTP/2. Единственным требованием для его активации является подключенный к сайту SSL-сертификат.
Если сертификат уже установлен, для активации HTTP/2 достаточно установить соответствующую галочку в свойствах Вашего сайта, во вкладке WWW домены:
Включение протокола HTTP/2 на сервере с NginX
Если Вы используете наши сервера с шаблонами Ubuntu 18 (или новее) с установленной ISPManager4, Ваш сервер поддерживает HTTP/2 “из коробки”. Процесс активации будет аналогичен таковому на хостинге, правки в конфиг Nginx будут внесены автоматически.
Если используемый образ более старый, активация выполняется следующим образом:
1. Подключитесь по SSH и проверьте текущую версию Nginx с помощью команды:
- nginx -v
Выводnginx version: nginx/1.18.0 (Ubuntu)
Если версия Nginx ниже 1.9.5, продолжать выполнение инструкции категорически не стоит! Это может привести к полной неработоспособности всего сервера.
2. Ввойдите в панель управления сервером под суперпользователем root.
3. Выберите нужный сайт во вкладке WWW домены и откройте его свойства с помощью кнопки Изменить. Убедитесь что к нему подключен SSL-сертификат.
4. Выберите нужный сайт кликом мыши и нажмите Конфиг в верхнем правом углу. Это действие позволит Вам просматривать и редактировать конфиг Nginx для выбранного сайта.
5. В открывшейся вкладке Nginx найдите секцию listen
:
Предупреждение: IP-адрес 37.72.129.24:443
является примером. IP-адрес Вашего сервера будет отличаться и редактировать его значение не нужно!
...
listen 37.72.129.24:443 ssl;
listen 37.72.129.24;
...
Добавьте в блок директиву http2
следующим образом:
...
listen 37.72.129.24:443 ssl http2;
listen 37.72.129.24;
...
И нажмите Ok. Если Nginx не перезагрузился автоматически, перезагрузите его во вкладке Сервисы.
Дополнительно: если на Вашем сервере нет панели управления ISPManager4, все указанное можно проделать аналогично с помощью внесения текстовых правок в конфиг Nginx (зачастую находится по адресу /etc/nginx/nginx.conf
). Внесите вышеописанные правки в блоке server
нужного сайта и перезагрузите Nginx. Для работы HTTP/2, Ваш сервер должен соответствовать техническим требованиям, включая наличие поддержки ALPN.