Cómo configurar o habilitar HTTP/2 con Apache en Ubuntu. HTTP/2 es un protocolo desarrollado para reducir la latencia, minimizar la sobrecarga del protocolo y muchas funciones más eficientes en comparación con HTTP/1.
En esta guía, aprenderá cómo habilitar HTTP/2 con Apache. Esta configuración se prueba en una instancia del motor de computación en la nube de Google con sistema operativo Ubuntu 20.20 y Apache 2.4.41.
Requisitos
- Versión de Apache mayor o igual a la 2.4.26.
- SSL instalado y funcionando. Aprenda a configurar SSL gratis usando Let'sEncrypt.
Asegúrese de cumplir los 2 requisitos anteriores para que HTTP/2 funcione.
Verifique la versión de Apache usando este comando.
apache2 -v
En Ubuntu 20.04 obtendrá un resultado similar al siguiente.
Server version: Apache/2.4.41 (Ubuntu) Server built: 2021-02-08T08:16:15
Habilitar módulo Apache HTTP/2
Puede habilitar el módulo HTTP/2 usando el a2enmod
comando.
sudo a2enmod http2
Configure el host virtual de Apache para usar HTTP/2.
Edite su configuración de host virtual HTTP y el Protocol
directiva.
sudo nano /etc/apache2/sites-available/ssl.conf
Reemplace ssl.conf con el nombre de archivo suyo.
Agregue lo siguiente a continuación <VirtualHost *:443>
Protocols h2 http/1.1
Su configuración debería verse como a continuación.
<VirtualHost *:443> Protocols h2 http/1.1 ...
Presiona CTRL+X
seguido de Y
y ENTER
para guardar y cerrar el archivo.
Reinicie Apache para que los cambios surtan efecto.
sudo service apache2 restart
Configurar Apache para usar HTTP/2 para PHP
Por defecto Apache usa mod_php
con MPM. HTTP/2 no es compatible con el módulo prefork. Entonces necesita usar Event MPM que no es compatible con mod_php
. Entonces necesitas configurar PHP-FPM.
Deshabilitar módulo PHP.
sudo a2dismod php8.0
Desactiva el módulo MPM prefork.
sudo a2dismod mpm_prefork
Habilite el módulo Event MPM, Fast_CGI y setenvif.
sudo a2enmod mpm_event proxy_fcgi setenvif
Instale PHP-FPM.
sudo apt install php8.0-fpm
Inicie PHP-FPM.
sudo systemctl start php8.0-fpm
Habilite la configuración de PHP-FPM en Apache.
sudo a2enconf php8.0-fpm
Reinicie Apache para que los cambios surtan efecto.
sudo systemctl restart apache2
Ahora HTTP/2 debería estar habilitado en su servidor.
Configuración de prueba
Si abre la consola en su elemento de inspección y carga su sitio web, verá el protocolo como h2
lo que confirma que HTTP/2 se está ejecutando.
Eso es todo. Ahora tiene habilitado HTTP/2 con Apache.
Conclusión
Ahora ha aprendido cómo habilitar HTTP2 con Apache en Ubuntu 20.04.
Gracias por tu tiempo. Si tiene algún problema o comentario, deje un comentario a continuación.