HTTP/2 è il più recente standard per la HTTP il protocollo, è il successore di HTTP/1.1. Sta diventando sempre più popolare, grazie ai benefici che porta gli sviluppatori web e gli utenti in generale. Esso fornisce un trasporto ottimizzato per HTTP semantica supportando tutte le funzioni del nucleo di HTTP/1.1 ma mira ad essere più efficiente in diversi modi.

Ci sono un sacco di funzionalità HTTP/2 che ti danno più possibilità di ottimizzare un sito web/applicazione. Esso offre una vera multiplexing e la concorrenza, meglio la compressione intestazione (codifica binaria), una migliore definizione delle priorità, meglio il flusso di meccanismi di controllo, e una nuova modalità di interazione chiamato “server push” che consente a un server di spingere le risposte a un client. Per non parlare, HTTP/2 si basa su Google sperimentale SPDY il protocollo.

Pertanto, l’obiettivo primario di HTTP/2 è per ridurre il tempo di caricamento della pagina web, migliorando così le prestazioni. Si sofferma inoltre sulla rete e di utilizzo delle risorse del server, nonché la sicurezza perché, con HTTP/2, SSL/TLS la crittografia è obbligatorio.

In questo articolo, imparerete come attivare Nginx con HTTP/2 supporto server Linux.

Prerequisiti:

  • Un’installazione funzionante di NGINX versione 1.9.5 o superiore, costruito con il ngx_http_v2_module modulo.
  • Assicurarsi che il sito utilizza il protocollo SSL/TLS certificato, se non ne avete uno, è possibile ottenere da Let’s Encrypt o utilizzare un certificato auto-firmato.

È possibile installare NGINX o distribuire con un LEMP pila, come descritto nelle seguenti guide:

Come Attivare HTTP/2.0 in NGINX

Se si dispone di NGINX installato, verificare che è stato costruito con il ngx_http_v2_module modulo eseguendo il comando riportato di seguito.

# strings /usr/sbin/nginx | grep _module | grep -v configure| sort | grep ngx_http_v2_module
Controllare Nginx HTTP/2 Modulo

Controllare Nginx HTTP/2 Modulo

Una volta che si dispone di un sito web/applicazione, viene servito da NGINX con HTTPS configurato, è possibile aprire i vostri siti web virtual server blocco (o host virtualefile per la modifica.

# vi /etc/nginx/conf.d/example.com.conf                    [On CentOS/RHEL]
$ sudo nano /etc/nginx/sites-available/example.com.conf    [On Ubuntu/Debian]

È possibile attivare HTTP/2 supporto, semplicemente aggiungendo il http2 parametro per tutti listen direttive, come mostrato nella seguente schermata.

listen 443 ssl http2;

Il campione del server di configurazione blocco sembra di seguito.

server {
        server_name example.com www.example.com;
        access_log  /var/log/nginx/example.com_access.log;
        error_log  /var/log/nginx/example.com_error.log;

        listen [::]:443 ssl ipv6only=on http2; # managed by Certbot
        listen 443 ssl http2; # managed by Certbot

        ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; # managed by Certbot
        ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; # managed by Certbot
        include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
        ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot    
}
Abilitare HTTP/2 Supporto in Nginx

Abilitare HTTP/2 Supporto in Nginx

Salvare le modifiche nel file e chiuderlo.

Quindi controllare il NGINX la sintassi di configurazione, se è OK, riavviare il Nginx servizio.

# nginx -t
# systemctl restart nginx

Quindi, aprire un browser web per verificare se il vostro sito è di essere servito HTTP/2.

http://www.example.com

Per accedere alle intestazioni HTTP, fare clic destro sulla pagina web visualizzata, selezionare Ispezionare dall’elenco delle opzioni per aprire gli strumenti di sviluppo, quindi fare clic su l’ Rete scheda, e ricaricare la pagina.

Controllare sotto Protocolli per vedere il tuo sito è in uso (se non vedi i Protocolli di intestazione, fare clic destro su una qualsiasi delle intestazioni e.g Nomepoi controllare Protocollo dall’elenco per visualizzare come intestazione).

Se il tuo sito è in esecuzione su HTTP/1.1sotto Protocollosi vedrà http/1.1 come mostrato nella seguente schermata.

Sito web in Esecuzione su HTTP/1.1

Sito web in Esecuzione su HTTP/1.1

Se è in esecuzione su HTTP/2sotto Protocollosi vedrà h2 come mostrato nella seguente schermata. È possibile disabilitare la cache del browser per visualizzare il contenuto più recente di essere servito direttamente dal server web.

Sito web in Esecuzione su HTTP/2.0

Sito web in Esecuzione su HTTP/2.0

Questo è tutto! Per ulteriori informazioni, vedere la ngx_http_v2_module documentazione del modulo. Non esitate a porre domande tramite il modulo di feedback al di sotto.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *