Section courante

A propos

Section administrative du site

 Serveur  Installation  Utilisation  Tutoriel  Aide 
Vue par liste complète
Installation
Introduction
Référence des directives
Référence des variables
Référence des modules
Les premiers pas
Contrôler nginx
Méthodes de traitement des connexions
Configuration des hachages
Un journal de bord de débogage
Enregistrement dans syslog
Fichier de configuration des unités de mesure
Paramètres de la ligne de commande
nginx pour Windows
Prise en charge de QUIC et HTTP/3
Comment Nginx traite une requête
Noms des serveurs
Utilisation de nginx comme équilibreur de charge HTTP
Configuration des serveurs HTTPS
Comment Nginx traite une session TCP/UDP
Les opérations
(Re)démarrer/arrêter
Préface
Notes légal
Dictionnaire
Recherche

Prise en charge de QUIC et HTTP/3

La prise en charge des protocoles QUIC et HTTP/3 est disponible depuis la version 1.25.0. De plus, depuis la version 1.25.0, la prise en charge de QUIC et HTTP/3 est disponible dans les paquets binaires Linux.

La prise en charge de QUIC et HTTP/3 est expérimentale, caveat emptor s'applique.

Construction à partir des sources

La construction est configurée à l'aide de la commande configure.

Lors de la configuration de nginx, il est possible d'activer QUIC et HTTP/3 à l'aide du paramètre de configuration --with-http_v3_module.

Une bibliothèque SSL fournissant la prise en charge de QUIC est recommandée pour construire nginx, comme BoringSSL, LibreSSL ou QuicTLS. Sinon, la couche de compatibilité OpenSSL sera utilisée et ne prend pas en charge les données précoces.

Utilisez la commande suivante pour configurer nginx avec BoringSSL :

./configure
    --with-debug
    --with-http_v3_module
    --with-cc-opt="-I../boringssl/include"
    --with-ld-opt="-L../boringssl/build/ssl
                   -L../boringssl/build/crypto"

Alternativement, nginx peut être configuré avec QuicTLS :

./configure
    --with-debug
    --with-http_v3_module
    --with-cc-opt="-I../quictls/build/include"
    --with-ld-opt="-L../quictls/build/lib"

Alternativement, nginx peut être configuré avec une version moderne de LibreSSL :

./configure
    --with-debug
    --with-http_v3_module
    --with-cc-opt="-I../libressl/build/include"
    --with-ld-opt="-L../libressl/build/lib"

Après la configuration, nginx est compilé et installé à l'aide de make.

Configuration

La directive listen du module ngx_http_core_module a reçu un nouveau paramètre quic activant HTTP/3 sur QUIC sur le port spécifié.

En plus du paramètre quic, il est également possible de spécifier le paramètre reuseport pour le faire fonctionner correctement avec plusieurs workers.

Pour activer la validation d'adresse :

quic_retry on;

Pour activer 0-RTT :

ssl_early_data on;

Pour activer le déchargement de segmentation générique (GSO) :

quic_gso on;

Pour définir la clé d'hôte pour différents jetons :

quic_host_key filename;

QUIC nécessite la version du protocole TLSv1.3 étant activée par défaut dans la directive ssl_protocols.

Par défaut, l'optimisation spécifique à GSO Linux est désactivée. Activez-la si une interface réseau correspondante est configurée pour prendre en charge GSO.

Exemple de configuration

http {
        log_format quic '$remote_addr - $remote_user [$time_local] '
                                        '"$request" $status $body_bytes_sent '
                                        '"$http_referer" "$http_user_agent" "$http3"';

        access_log logs/access.log quic;

        server {
                # pour une meilleure compatibilité, il est recommandé
                # d'utiliser le même port pour quic et https
                listen 8443 quic reuseport;
                listen 8443 ssl;

                ssl_certificate     certs/example.com.crt;
                ssl_certificate_key certs/example.com.key;

                location / {
                        # requis pour que les navigateurs les dirigent vers le port rapide
                        add_header Alt-Svc 'h3=":8443"; ma=86400';
                }
        }
}

Dépannage

Conseils pouvant aider à identifier les problèmes :



PARTAGER CETTE PAGE SUR
Dernière mise à jour : Lundi, le 30 décembre 2024