Использование http2 протокола для apache2 и ubuntu 18.04

Опубликовано admin - ср, 01/04/2020 - 18:48

Протокол http2 призван ускорить интернет и уменьшить трафик. Хотел внедрить его на моем хостинге но оказалось что в конфигурации apache + mod_php + mpm prefork он не работает. Эта статья показывает какими командами можно быстро переделать конфигурацию в apache + php_fpm + mpm event + http2. Для успешной настройки нужен уже сконфигурированный https протокол (сертификат и настройки сайта для apache).

Устанавливаем правильную комбинацию apache и php

sudo add-apt-repository ppa:ondrej/php
sudo add-apt-repository ppa:ondrej/apache2
sudo apt update
sudo apt upgrade
sudo apt install apache2

sudo a2dismod php7.3
sudo systemctl stop apache2
 
sudo apt install php7.3-fpm
sudo a2enmod proxy_fcgi setenvif
sudo a2enconf php7.3-fpm
 
sudo a2dismod mpm_itk
sudo a2dismod mpm_prefork
sudo a2enmod mpm_event

Добавляем в настройки действующего сайта ssl в каталоге /etc/apache2/sites-enabled/ в разделе <VirtualHost *:443> строку Protocols h2 h2c http/1.1

Для запуска от пользователя меняем пользователя user = myusername и группу group = myusername в файле sudo nano /etc/php/7.3/fpm/pool.d/www.conf . это мне нужно чтобы было удобней работать с сайтом и производить бэкап сайта.

Запускаем

sudo a2enmod http2
sudo service apache2 restart

Посмотреть использование протокола можно с помощью расширения HTTP/2 and SPDY indicator для броузера chrome.