Page 1 of 1

Включение http2

Posted: Mon Jul 09, 2018 8:45 am
by pro100ssk
Приветствую.
Уже сутки безрезультатно бьюсь в попытках сделать Upgrade с http/1.1 до http2
В настройках пакетов (в панели VestaCP разумеется) у nginx есть шаблон с http2 но его активация ничего не даёт,
консоль хром браузера сообщает, что подключение всё равно идёт по протоколу http/1.1
Debian 8 и версия VestaCP последней версии на текущий момент.
Подскажите пожалуйста правильный метод перехода на http2 в любимой панели

Re: Включение http2

Posted: Mon Jul 09, 2018 9:35 am
by gmalets
Откройте конфигурационный файл хоста и добавьте параметр http2 после порта.

На пример, у вас пользователь "admin" и хост "supermegahost.online"
Открываете файл /home/admin/conf/web/supermegahost.online.nginx.ssl.conf

Code: Select all

server {
    listen	IP_ADDRESS:443 http2;
    ...
    ...
Далее командой "nginx -t" проверьте правильность синтаксиса конфигурационного файла, если ошибок нет, то затем уже делайте "systemctl reload nginx" или "systemctl restart nginx"

Если вам нужно чтобы новые хосты создавались уже с таким параметром - отредактируйте шаблон nginx

более детально можно прочесть тут https://www.nginx.com/wp-content/upload ... per_v4.pdf

Re: Включение http2

Posted: Mon Jul 09, 2018 10:53 am
by pro100ssk
К сожалению результата не дало. Хром консоль всё равно сообщает что обмен данными идёт по протоколу http/1.1
Что может быть не так? Кстати, ничего что у меня в этом файле указан ip внутренний, а не внешний? (сервер стоит за роутером)

Re: Включение http2

Posted: Mon Jul 09, 2018 8:56 pm
by gmalets
pro100ssk wrote:
Mon Jul 09, 2018 10:53 am
К сожалению результата не дало. Хром консоль всё равно сообщает что обмен данными идёт по протоколу http/1.1
Что может быть не так? Кстати, ничего что у меня в этом файле указан ip внутренний, а не внешний? (сервер стоит за роутером)
Из коробки в CentOS apache2 версии 2.4.6 не поддерживает пакет mod_http2
Разве что вы захотите из бэкпорта скомпилировать новую версию руками

Re: Включение http2

Posted: Tue Jul 10, 2018 10:40 am
by pro100ssk
Debian 8, версия Apache/2.4.25

Re: Включение http2

Posted: Tue Jul 31, 2018 8:45 pm
by Gara
1. - http2 работает только с SSL
2. - не создается каталог /var/log/httpd/domains/ где хранятся файлы с ошибками

Re: Включение http2

Posted: Wed Aug 01, 2018 10:35 pm
by Stesh
pro100ssk wrote:
Mon Jul 09, 2018 10:53 am
К сожалению результата не дало. Хром консоль всё равно сообщает что обмен данными идёт по протоколу http/1.1
Что может быть не так? Кстати, ничего что у меня в этом файле указан ip внутренний, а не внешний? (сервер стоит за роутером)
Кроме поддержки http/2 со стороны nginx нужна поддержка ALPN - т.е. nginx должен быть собран со свежей версией openssl (ну или с патчем на старые).

Re: Включение http2

Posted: Sat Mar 07, 2020 11:16 pm
by KRV
gmalets wrote:
Mon Jul 09, 2018 9:35 am
Откройте конфигурационный файл хоста и добавьте параметр http2 после порта.

На пример, у вас пользователь "admin" и хост "supermegahost.online"
Открываете файл /home/admin/conf/web/supermegahost.online.nginx.ssl.conf

Code: Select all

server {
    listen	IP_ADDRESS:443 http2;
    ...
    ...
Далее командой "nginx -t" проверьте правильность синтаксиса конфигурационного файла, если ошибок нет, то затем уже делайте "systemctl reload nginx" или "systemctl restart nginx"

Если вам нужно чтобы новые хосты создавались уже с таким параметром - отредактируйте шаблон nginx

более детально можно прочесть тут https://www.nginx.com/wp-content/upload ... per_v4.pdf
Проделал операцию - что-то пока безрезультатно. Хотя, по идее, на первый взгляд - все должно работать. Что не так? Подожду до завтра и буду дальше ковырять...

UPD: все-таки заставил себя перед сном еще раз заребутить сервер. Подождал 3 мин. Поставил расширение Google Chrome - HTTP/2 and SPDY indicator. Перезапустил сайт без кеша - плагин показывает HTTP/2 соединение )) Ради интереса вручную проверил Chrome Dev Tool (F12) > Network > Protocol - все по h2 и http/2+quic/46 (что это?).