Mise en place HTTP2 avec Haproxy

De Ikoula Wiki
Révision datée du 16 juillet 2021 à 12:30 par Mgrelet794f6 (discussion | contributions) (Page créée avec « <span data-link_translate="he"></span><span data-link_translate="ro"></span><span data-link_translate="ru"></span><span data-link_translate="pl"></span><span data-link_tra… »)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)
Jump to navigation Jump to search

Introduction

HTTP2 (HTTP/2.0) ou HyperText Transfert Protocol/2 est une version majeure du protocole réseau HTTP utilisé sur le web.
Dans cette article, nous allons voir comment mettre en place le protocole HTTP2 avec Haproxy et ainsi permettre a vos différents sites de fonctionner avec le protocole HTTP2.


Pré-requis

Voici les différents pré-requis pour la mise en place du protocole HTTP2 sous Haproxy:
- Un installation fonctionnelle de Haproxy version 1.8 ou plus élevée.
- OpenSSL en version 1.0.2 ou plus élevée pour l'extension TLS ALPN.
- Un certificat SSL valide pour votre/vos site(s), si vous n'en avez pas vous pouvez obtenir un certificat SSL gratuit via Let's Encrypt ou alors vous avez la possibilité de commander un certificat SSL sur notre site.


Mise en place

Partons du principe que Haproxy est déjà installé et configuré sur votre serveur, vous allez devoir ajouter dans les sections souhaitées (essentiellement frontend, mais il se peut que vous souhaitiez également configurer les backend en HTTP2) les configurations ci-dessous.

Pour les parties non-encryptées (sans TLS, HTTP/2 à travers HTTP appelé h2c), il faut ajouter proto h2 au niveau de l'IP/port d'écoute :

frontend www
   mode http
   bind :80 proto h2
   default_backend servers

Pour les parties encryptés (avec TLS), il faut ajouter alpn h2,http/1.1 au niveau de l'IP/port d'écoute/certificat SSL :

frontend www
   mode http
   bind :443 ssl crt /path/to/cert.crt alpn h2,http/1.1
   default_backend servers

Le paramètre alpn annonce que l'équilibreur de charge prend en charge HTTP/2 (h2) comme premier choix et HTTP/1.1 comme secondaire en les répertoriant dans cet ordre.

Pour les backend, il s'agit des mêmes configurations à renseigner au niveau de vos directives server.



Cet article vous a semblé utile ?

0



Vous n'êtes pas autorisé à publier de commentaire.