chrome_reader_mode

Metti in mostra la tua personalizzazione Linux help_outline Maggiori informazioni

linux/hub è molto più di quel che vedi! info_outline Leggi le intenzioni

🔧 #howto - Abilitazione del protocollo HTTP/2 in Apache

Scritto da Mirko Brombin il Lun, 01/07/2019 - 08:19
Lun, 01/07/2019 - 08:19
#howto
apache
In questa pagina
  • Caricamento..

Pochi giorni fa abbiamo spiegato come Abilitare il protocollo HTTP/2 in Nginx, oggi affrontiamo lo stesso discorso per Apache.

Il protocollo HTTP/2 è la seconda versione del comune protocollo HTTP utilizzato nel web. Si basa su SPDY, un protocollo di trasferimento creato da Google che riduce la latenza e le prestazioni nella fase di caricamento delle pagine web.

Abilitare il nuovo protocollo permette non solo di godere di un nuovo sistema di trasporto dei dati ma di maggiori prestazioni facilmente notabili. Questo grazie ad un sistema che alleggerisce il trasporto dei contenuti, riducendone la dimensione e suddividendoli in unità più grandi, tutto automaticamente.

Requisiti

Configurazione

Il protocollo HTTP/2 necessita di un certificato SSL, per questo motivo ne andremo a generare uno per poi procedere alla configurazione di nginx.

Certificato SSL

Di seguito è presente la procedura su come generare un certificato Self-Signed, nel caso foste interessati ad un certificato Let's Encrypt, seguite la guida disponibile a questo link.

Possiamo generare un certificato via openssl:

sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/apache-selfsigned.key -out /etc/ssl/certs/apache-selfsigned.crt
sudo openssl dhparam -out /etc/ssl/certs/apache-selfsigned.pem 2048

Configurazione di Apache

Ora procediamo con la configurazione di Apache. Per prima cosa dobbiamo abilitare i moduli ssl e http2 tramite a2enmod:

sudo a2enmod ssl
sudo a2enmod http2

 modifichiamo poi la configurazione del nostro vhost come segue:

<VirtualHost *:443>
  ServerName il_mio_dominio.ex
  ServerAlias www.il_mio_dominio.ex
  DocumentRoot /var/www/il_mio_dominio.ex/public_html
  SSLEngine on
  SSLCertificateKeyFile /etc/ssl/private/apache-selfsigned.key
  SSLCertificateFile /etc/ssl/private/apache-selfsigned.crt
  SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1
  Protocols h2 http/1.1
</VirtualHost>

Riavviamo infine httpd:

sudo systemctl restart httpd

Good *nix
 - Mirko

Etichette
remove_red_eye