La plupart des navigateurs actuels supportent le protocole HTTP/2. La sémantique n'est pas modifiée mais HTTP/2 est un protocole binaire, son principal avantage étant de fortement accélérer les communications réseau.
Afficher le MPM en cours d'utilisation avec la commande:
a2query -m | grep mpm_
Activer le module mpm_event si ce n'est pas encore le cas puis charger le module http2
a2enmod http2
systemctl restart apache2
Le module mod_http2 implémente toutes les fonctionnalités décrites par la RFC 7540 et supporte les connexions en texte pur (http/tcp: variante nommée h2c), ou sécurisées (https/TLS: variante nommée h2). La variante h2c peut être en mode direct ou Upgrade: via une requête initiale en HTTP/1.
Modifier la configuration:
<VirtualHost _default_:443> ServerAdmin administrateur@example.com ServerName fqdn # http/2 sera utilisé prioritairement Protocols h2 http/1.1 ...
Activer le module et redémarrer le service:
a2enmod http2
systemctl restart apache2.service
curl --head --http2 --verbose "https://cb-velum.mairie-tournefeuille.fr/login"
La directive SSLCipherSuite définit une chaîne de caractères contenant les algorithmes autorisés
Pour lister les algorithmes de chiffrements disponibles sur le serveur:
openssl ciphers -v
Module firefox indiquant la disponiblilité de HTTP2 https://addons.mozilla.org/en-US/firefox/addon/http2-indicator/
[Mon Apr 20 16:35:00.567360 2020] [http2:warn] [pid 30884] AH10034: The mpm module (prefork.c) is not supported by mod_http2. The mpm determines how things are processed in your server. HTTP/2 has more demands in this regard and the currently selected mpm will just not do. This is an advisory warning. Your server will continue to work, but the HTTP/2 protocol will be inactive.
Curl doit supporter la fonctionnalité HTTP2, la commande suivante doit retourner un résutat:
curl --version | grep -i http2
debogage établissement de la liaison TLS