Visualiser une révision

[Tuto/HowTo] Apache2 activer HTTP2

voxdemonix : révision n°8 (03 septembre 2019 00:55:22)

Introduction
============

[HTTP2](https://fr.wikipedia.org/wiki/Hypertext_Transfer_Protocol/2) vise l'accélération/optimisation du web et est retro-compatible, se qui signifie qu'il est utilisable par des clients supportant uniquement HTTP1.
HTTP2 n'est actif que lorsque la connexion se fait en https.
Les avantages de HTTP2 :

1. accélérer les connexions chiffrées par [TLS](https://fr.wikipedia.org/wiki/Transport_Layer_Security)
1. grouper plusieurs requêtes en une seule
1. les [headers http](https://www.alsacreations.com/astuce/lire/1152-en-tetes-http.html) sont [compressés](https://fr.wikipedia.org/wiki/Compression_de_donn%C3%A9es)
1. interrompre des [connexions TCP](https://fr.wikipedia.org/wiki/Transmission_Control_Protocol) sans les fermer (évitant de les ré-ouvrir si demandé peu après)


Mise en place
=============

Sur Ubuntu 16.04+
-----------------

**Lancez l'installation**

```
sudo apt-get install software-properties-common
sudo add-apt-repository -y ppa:ondrej/apache2
sudo apt-key update
sudo apt-get update
sudo apt-get --only-upgrade install apache2 -y
sudo a2enmod http2
sudo service apache2 restart
```

**Ensuite éditez tout vos fichiers vhost situé dans _/etc/apache2/sites-enabled/_ afin d'ajouter dedans la ligne suivante (vous pouvez l'ajouter au début)**

```
Protocols h2 http/1.1
```



**On change le module mod_php à php7.x-fpm.**

```
sudo apt-get install php7.2-fpm
sudo a2enmod proxy_fcgi
sudo a2enconf php7.2-fpm
sudo a2dismod php7.2
sudo a2dismod mpm_prefork
sudo a2enmod mpm_event
sudo service apache2 restart
```



Farm Link
=========

* [WikipediaFR - Hypertext Transfer Protocol/2](https://fr.wikipedia.org/wiki/Hypertext_Transfer_Protocol/2)
* [En route pour HTTP/2.0](https://linuxfr.org/news/en-route-pour-http-2-0)
* [HTTP/2 : une évolution importante du protocole du web, notamment pour les mobiles](http://www.zdnet.fr/blogs/infra-net/http-2-une-evolution-importante-du-protocole-du-web-notamment-pour-les-mobiles-39798198.htm)
* [Qu’est-ce que le HTTP2 ?](http://www.disko.fr/reflexions/technique/quest-ce-que-le-http2/)
* [[Tuto/HowTo] [GNU/Linux] Activer HTTP2 sur apache2](https://www.0rion.netlib.re/forum4/viewtopic.php?f=40&t=557) (tutoriel d'origine)