Ce module nécessite la présence de
Avertissement : il ne sera effectué aucune tentative de fusion de plusieurs requêtes entrantes HTTP/1 (devant être mandatées vers le même serveur d'arrière-plan) vers des flux HTTP/2 appartenant à la même requête HTTP/2. Chaque requête HTTP/1 entrante sera mandatée vers le serveur d'arrière-plan en utilisant une requête HTTP/2 séparée (tout en réutilisant si possible la même connexion TCP).
Ce module s'appuie sur libnghttp2 pour fournir le moteur central http/2.
Ce module en est au stade expérimental. Ses comportement, directives et valeurs par défauts sont donc susceptibles de modifications d'une version à l'autre plus fréquentes que pour les autres modules. A ce titre, il est fortement conseillé aux utilisateurs de consulter le fichier "CHANGES" pour prendre connaissance de ces modifications.
N'activez pas le mandatement avant d'avoir sécurisé votre serveur. Les serveurs mandataires ouverts sont dangereux non seulement pour votre propre réseau, mais aussi pour l'Internet au sens large.
Les exemples ci-dessous montrent comment configurer HTTP/2 pour des connexions d'arrière-plan vers un mandataire inverse.
Pour mandater en inverse les protocoles h2
ou
h2c
, on utilise la directive
https
et respectivement
http
qui sont connus et utilisés par l'agent utilisateur.
%{VARNAME}n
avec les directives
Ce module ne supporte pas la fonctionnalité HTTP/2 PUSH. Les serveurs
d'arrière-plan qui veulent indiquer des ressources à précharger doivent
envoyer les en-têtes Link
appropriés.
En cas de besoin, il peuvent le faire en utilisant les réponses
intermédiaires "103 Early Hints"
comme indiqué dans la RFC 8297, ce qui fournira
les meilleures performances. Si le client comprend aussi le langage HTTP/2,
il en résultera un PUSH de la part de httpd vers le celui-ci ou un simple
transfert de la réponse 103.