Nginx è un server web open-source che ha conquistato il cuore di molti amministratori e sviluppatori grazie alle sue prestazioni efficienti, al basso consumo di memoria e al potente supporto per vari protocolli. Oggi parleremo della configurazione del supporto HTTP/2 in Nginx.

HTTP/2 è un’evoluzione del protocollo HTTP che migliora il trasferimento dei dati tra il server e l’utente. Sostituisce l’HTTP 1.1, che aveva un limite al numero di connessioni simultanee e quindi rallentava il caricamento di pagine pesanti. HTTP/2 risolve questo problema consentendo il caricamento parallelo dei dati e la compressione delle intestazioni HTTP.

Perché è importante il passaggio a HTTP/2?

Il passaggio a HTTP/2 non solo velocizza il caricamento del sito web, ma aumenta anche la sicurezza della trasmissione dei dati. Tutti i browser moderni richiedono ai siti web di utilizzare HTTPS per supportare HTTP/2, che rende più sicura la trasmissione dei dati tra il server e i visitatori.

Il processo di transizione a HTTP/2

Prima di iniziare a configurare HTTP/2 , è necessario disporre di un server con Ubuntu 18.04 e Nginx installato. Inoltre, il vostro nome di dominio deve essere puntato al server e deve essere installato un certificato SSL (ad esempio, Let’s Encrypt) per questo dominio.

1. Impostazione del server

Aprite il file di configurazione del vostro dominio:

vim /etc/nginx/sites-available/il_tuo_dominio

Aggiungere il supporto HTTP/2 per le connessioni IPv6 e IPv4:

listen [::]:443 ssl hp2 ipv6only=on;
ascoltare 443 ssl http2;

Salvare le modifiche e verificare la sintassi:

nginx -t

2. Miglioramento della sicurezza

Per migliorare la sicurezza, escludere i cifrari non sicuri. Nel file di configurazione del dominio, modificare l’opzione ssl_ciphers:

ssl_ciphers EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;

Controllare la sintassi e riavviare il server:

nginx -t
systemctl restart nginx.service

3. Aggiunta della sicurezza del trasporto HTTP (HSTS)

Per una sicurezza ancora maggiore, aggiungere l’intestazione HTTP Strict Transport Security al file di configurazione di Nginx. Questa intestazione garantisce che i browser utilizzino solo connessioni HTTPS.

Nel file di configurazione di Nginx:

add_header Strict-Transport-Security "max-age=15768000; includeSubDomains" sempre;

Controllare la sintassi e riavviare il server.

4. Verifica del corretto funzionamento di HTTP/2.

È possibile testare HTTP/2 utilizzando il comando curl:

curl -I -L https://ваш_домен

La risposta del server deve menzionare HTTP/2.

È inoltre possibile utilizzare Google Chrome e gli strumenti per gli sviluppatori per verificare la presenza del supporto HTTP/2.

Ora il vostro sito web è pronto per lavorare con HTTP/2, una versione più veloce e sicura del protocollo HTTP 🚀.

Ricordate di mantenere sempre il vostro server aggiornato e sicuro. Buona fortuna!!!!

Leggi anche:

Domande e risposte

Quali sono i vantaggi dell’utilizzo di HTTP/2 rispetto a HTTP/1.1?

HTTP/2 offre una serie di vantaggi, tra cui il miglioramento delle prestazioni grazie a funzioni come il multiplexing e la compressione delle intestazioni, una maggiore sicurezza grazie alla crittografia integrata e un migliore supporto per le moderne tecnologie web

È necessario abilitare SSL/TLS quando si configura il supporto HTTP/2?

Sì, l’abilitazione di SSL/TLS è essenziale quando si configura il supporto HTTP/2 per garantire una comunicazione sicura tra client e server. La crittografia SSL/TLS protegge i dati sensibili da intercettazioni e accessi non autorizzati.

È possibile configurare il supporto HTTP/2 su versioni precedenti di Ubuntu?

Sebbene sia tecnicamente possibile configurare il supporto HTTP/2 su versioni precedenti di Ubuntu, come la 16.04, si consiglia di utilizzare Ubuntu 18.04 o successive per una compatibilità e un supporto ottimali.

Come posso verificare se HTTP/2 è abilitato sul mio server Nginx?

È possibile verificare se HTTP/2 è abilitato sul server Nginx utilizzando strumenti come curl o servizi di test HTTP/2 online. In alternativa, l’esame dei log del server Nginx può dare un’idea della versione del protocollo utilizzata dalle connessioni client.

L‘abilitazione del supporto HTTP/2 richiede risorse aggiuntive per il server?

L’abilitazione del supporto HTTP/2 può richiedere un po’ più di risorse del server rispetto a HTTP/1.1, a causa della maggiore complessità del protocollo. Tuttavia, i vantaggi in termini di prestazioni sono generalmente superiori ai requisiti minimi di risorse.

Posso tornare a HTTP/1.1 se necessario dopo aver configurato il supporto HTTP/2?

Sì, se necessario è possibile tornare a HTTP/1.1 modificando le impostazioni di configurazione di Nginx. Tuttavia, si consiglia di testare a fondo la compatibilità e le prestazioni del sito web prima di apportare qualsiasi modifica.

Sull'autore

Andrii Kostashchuk

Andrii ha esperienza nella programmazione in vari linguaggi per diverse piattaforme e sistemi. Ha trascorso più di 8 anni nella sfera di Internet, lavorando con vari CMS, come: Opencart, Drupal, Joomla e, naturalmente, il più popolare sistema di gestione dei contenuti WordPress.

Visualizza tutti gli articoli