Comment faire pour que nginx profite de http2 avec express

J’utilise express avec node et nginx comme proxy inverse. Je voudrais savoir comment tirer parti de http / 2 avec nginx pour servir du contenu statique, toutes les autres demandes étant transférées vers l’API express.

Pour le moment, mon serveur express est servi via http / 1 et nginx accepte les connexions http / 2 et les transfère pour exprimer. Comment configurer nginx pour qu’il utilise http / 2 pour servir tout dans mon dossier statics, mais transfère toutes les requêtes vers l’API en tant que http1?

Je vais casser vos questions en deux parties:

  1. Comment tirer parti de http / 2.0 pour servir des fichiers statiques à partir de nginx?
  2. Comment configurer nginx pour envoyer une requête http / 1.1 au serveur principal au cas où nginx agirait comme un proxy inverse?

Réponse 1:

Dans le cas de la dissortingbution de fichiers statiques, le principal avantage en termes de performances peut être l’utilisation de la fonctionnalité de multiplexage du protocole http / 2.0. Le multiplexage améliore la fonctionnalité de traitement en pipeline introduite dans http / 1.1 et résout le problème du blocage HOL . Avec le multiplexage, vous pouvez utiliser la même connexion TCP sous-jacente pour charger plusieurs ressources en parallèle en utilisant une seule connexion http. Vous devez également considérer la priorisation du stream pour atsortingbuer la priorité à la ressource que vous souhaitez charger en premier sur la page, sinon le chargement de certaines ressources critiques peut être retardé car toutes les ressources se disputent la même connexion multiplexée.

Réponse 2:

L’envoi de la requête http / 1.1 au serveur principal est le comportement par défaut. Donc, si vous avez déjà configuré nginx pour utiliser http / 2.0, vous n’avez rien à faire pour protéger les requêtes http / 1.1 sur votre backend. Cela est dû au fait que nginx ne supporte pas http / 2.0 dans le module proxy pour le moment. Reportez-vous à ce billet . Aussi, s’il vous plaît vérifier ce tutoriel numérique de l’océan qui vous guidera pour configurer nginx avec http / 2.0 configuré sur Ubuntu 16.04.