GNU/Linux >> Linux Esercitazione >  >> Linux

Come abilitare HTTP/2 in Nginx

Protocollo di trasferimento ipertestuale versione 2 (HTTP/2 ) è la versione più recente del protocollo HTTP, pubblicata come standard IETF in RFC 7540 nel 2015. Il focus del protocollo è sulle prestazioni; in particolare, latenza percepita dall'utente finale, utilizzo della rete e delle risorse del server. Uno degli obiettivi principali è consentire l'utilizzo di un'unica connessione dai browser a un sito Web. Il protocollo è compatibile con le versioni precedenti, quindi i metodi HTTP, i codici di stato e la semantica sono gli stessi delle versioni precedenti del protocollo. Nginx ha il supporto HTTP/2 dalla versione 1.9.5. In questo tutorial, supporrò che tu abbia già una configurazione TLS funzionante e che tu abbia necessario installare la versione di Nginx sulla tua distribuzione Linux preferita e che tu sappia come utilizzare Let's Encrypt, o sai come emettere un certificato autofirmato.

Requisiti

Per abilitare HTTP/2 in Nginx dovrai soddisfare i seguenti requisiti:

  • Nginx versione 1.9.5 o successiva. Puoi controllare la tua versione di Nginx eseguendo (nginx -v ) comando.
  • OpenSSL versione 1.0.2 o successiva. Puoi controllare la tua versione di OpenSSL eseguendo il comando (versione OpenSSL).
  • Certificato SSL/TLS di Let's Encrypt o un certificato autofirmato.
  • Protocollo TLS 1.2 o successivo abilitato. In caso contrario, non sarai in grado di utilizzare HTTP/2. Le implementazioni di HTTP/2 devono utilizzare TLS versione 1.2 o successiva per HTTP/2 su TLS.

Abilita HTTP/2 in Nginx

Per abilitare HTTP/2 in Nginx, dobbiamo aggiungere http2 parametro al listen direttiva nel nostro host virtuale:

listen 443 ssl http2;

E ricarica la tua configurazione Nginx:

sudo systemctl reload nginx.service

Ecco la configurazione minima del server virtuale che può essere utilizzata per abilitare HTTP/2 in alcuni host virtuali:

server {

listen 443 ssl http2;
listen [::]:443 ssl http2;

server_name example.com;
root /path/to/public;

ssl_certificate /path/to/certificate.crt;
ssl_certificate_key /path/to/private.key;

ssl_protocols TLSv1.2;

}

Per verificare se il tuo server supporta HTTP/2, puoi utilizzare gli strumenti di sviluppo del browser o i file di registro Nginx. Quello che segue è uno screenshot del browser Google Chrome che mostra HTTP/2 in azione sul dominio https://example.com.

Puoi anche utilizzare la variabile incorporata Nginx $http2 per vedere il protocollo negoziato. Questa variabile registrerà: "h2 ” per HTTP/2 su TLS, “h2c ” per HTTP/2 su TCP non crittografato o una stringa vuota altrimenti nel registro di accesso di Nginx se configurato per farlo.

E questo è tutto ciò che serve per abilitare HTTP/2 sul tuo server Nginx.

  • RFC 7540
  • HTTP/2

Linux
  1. Come reindirizzare da HTTP a HTTPS in Nginx

  2. Come abilitare TLS 1.3 in Nginx

  3. Come abilitare HTTP2 in NGINX

  4. Come abilitare HTTP/2 in Nginx su Ubuntu e CentOS

  5. Come configurare Nginx con supporto HTTP/2 su Debian 9

Come abilitare HTTP/2.0 in Nginx

Come abilitare HTTP/2 in Apache su sistema Linux

Come abilitare HTTP/2.0 in Nginx Server:guida passo passo

Come configurare Nginx con supporto HTTP/2 su Ubuntu 18.04

Come abilitare HTTP/2 con Apache in Ubuntu

Come abilitare HTTP/2.0 in Nginx su CentOS