База знаний: Linux Server
Включение протокола HTTP/2 с Apache в Ubuntu 20.04/ Debian 9-10
Автор Алексей | HiTex.BY, Последнее изменение: Алексей | HiTex.BY на 12 января 2024 10:38

Включить протокол HTTP/2 на виртуальном хосте Apache

Сначала вам нужно включить модуль HTTP/2.

sudo a2enmod http2

Затем отредактируйте файл виртуального хоста Apache. Если вы включили HTTPS с помощью Let's Encrypt, SSL виртуального хоста создается как отдельный файл, завершающийся расширением le-ssl.conf.

sudo nano /etc/apache2/sites-enabled/ ваш-сайт -le-ssl.conf

Разместите эту директиву после открытия <VirtualHost *:443>тега.

Протоколы h2 http/1.1

Apache-http2-ubuntu-20.04

Сохраните и закройте файл. Затем перезапустите Apache, чтобы внести изменения в силу.

sudo systemctl restart apache2

Если вы используете mod_php

Если вы используете mod_phpмодуль с Apache, вы должны использовать модуль prefork MPM. К сожалению, Mod_http2префорк не поддерживает. Вы можете использовать модуль событий MPM для поддержки HTTP/2, и это требует запуска PHP с FastCGI, поскольку события MPM несовместимы с mod_php. Выполните следующие действия, чтобы переключиться на первое разветвление события MPM.

Отключите модуль PHP7.

sudo a2dismod php7.4  

Отключите модуль предварительной вилки MPM.

sudo a2dismod mpm_prefork

Включите модуль Event MPM, Fast_CGI и setenvif.

sudo a2enmod mpm_event proxy_fcgi setenvif

Установите PHP-FPM

sudo apt install php7.4-fpm 

Запустить PHP-FPM

sudo systemctl restart php7.4-fpm

Включите PHP-FPM для запуска во время загрузки.

sudo systemctl enable php7.4-fpm

Установите PHP-FPM в качестве обработчика PHP Apache с помощью этой команды, которая активирует /etc/apache2/conf-available/php7.4-fpm .confфайл.

sudo a2enconf php7.4-fpm

Перезапустите Apache, чтобы изменения вступили в силу.

sudo systemctl restart apache2
(1 голос(а))
Эта статья полезна
Эта статья бесполезна

Комментарии (0)