@rgz

Попытка перейти на HTTP/2. В чем моя ошибка?

Здравствуйте. Есть ресурс на vps:
  • debian 8
  • https (let's encrypt)
  • apache

Решил перейти на http/2:
Сервер Апач. Обновил до 2.4.37.
включил модуль http2
a2enmod http2
Перезагрузил apachectl -t && systemctl restart apache2
Добавил конфиг
bash -c 'cat >/etc/apache2/conf-available/http2.conf' <<EOF
Protocols h2 h2c http/1.1

H2Push          on
H2PushPriority  *                       after
H2PushPriority  text/css                before
H2PushPriority  image/jpeg              after   32
H2PushPriority  image/png               after   32
H2PushPriority  application/javascript  interleaved

SSLProtocol all -SSLv2 -SSLv3
SSLHonorCipherOrder on
SSLCipherSuite 'EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA !RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS'

EOF

Перезагрузил апач. Но протокол по прежнему http/1.1
Кэш чистил

Так же пробовал добавлять в virtualhost
Protocols h2 h2c http/1.1
Мод включен (apache2ctl -M показывает)
Вопрос: что я забыл? Почему не работает?

Спасибо.
  • Вопрос задан
  • 616 просмотров
Решения вопроса 1
VELIK505
@VELIK505
Руководитель департамента profitcentr.com
1. у вас апач какой версии? 2.4.24 или старше?
2. http2 просто включается добавлением строки Protocols h2 h2c http/1.1 в головной конфиг апача.
3. Банальный вопрос после правки конфига апача ребутили апач? ssl сертификаты подрублены верно?
4. Ну и напоследок банальный вопрос после правки конфига апача ребутили апач?
5. Если 1-4 пункт всё ок то у вас mpm_prefork который не совместим с http2 перейдите на event. Но придётся php пересобрать/перейти на php-fpm. (Ну и само собой апач становится по сути не нужен)
6. Проверить http2 можно Вот тут
Других вариантов быть не может Скорее всего проблема в 5ом пункте описаным мною.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
dima9595
@dima9595
Junior PHP
А вы сами сертификаты подтянули в конфиг?
Ответ написан
opium
@opium
Просто люблю качественно работать
В site enabled включите хттп2 для хттпс
Ответ написан
@rgz Автор вопроса
Решил проблему. Если кто будет искать, то вот решение:
«стандартный» модуль Апач "prefork" не очень совместим с HTTP/2, поэтому Вам нужно использовать более подходящий. Выключаем один, включаем другой, перезагружаем Apache.

sudo a2dismod mpm_prefork
sudo a2enmod mpm_event
service apache2 restart
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы