Site icon simonezanella.it

Abilitare la compressione GZip su un server con Plesk e Linux

gzip /GNU Zip) è un software libero per la compressione dei dati di notevole interesse per migliorare la velocità e le prestazioni dei siti web forniti da un web server Linux. Le pagine vengono compresse prima di essere inviate all’utente, il cui browser poi le decomprimerà: questa operazione è generalmente più rapida che trasferire pagine non compresse.

Per chi ha un server Linux dotato di Plesk ecco i comandi da utilizzare per abilitare gzip su tutto il server, distinguo in 2 casi a seconda che sia utilizzato il web server Apache o Nginx. E’ necessario ovviamente un accesso da amministratore via SSH su terminale.

Apache

Verificare che sia presente il modulo deflate con il comando (su CentOS, su Debian o Ubuntu usare apachectl al posto di httpd):

httpd -M | grep deflate

se presente il terminale mostrerà una risposta del genere:

altrimenti da Plesk si può attivare comodamente dal pannello delle impostazioni:

ora se non presente bisogna creare il file deflate.conf (su CentOS, per Debian o Ubuntu tenere presente che al posto di  httpd il servizio si chiama apache2,  e il percorso per il file deflate.conf è /etc/apache2/mods-available/ ):

touch /etc/httpd/conf.d/deflate.conf

e modificarlo con l’editor VI (o con quello che preferite):

vi /etc/httpd/conf.d/deflate.conf

inserendo il seguente codice:

<IfModule mod_deflate.c>
# Compress HTML, CSS, JavaScript, Text, XML and fonts
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
AddOutputFilterByType DEFLATE application/x-font
AddOutputFilterByType DEFLATE application/x-font-opentype
AddOutputFilterByType DEFLATE application/x-font-otf
AddOutputFilterByType DEFLATE application/x-font-truetype
AddOutputFilterByType DEFLATE application/x-font-ttf
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE font/opentype
AddOutputFilterByType DEFLATE font/otf
AddOutputFilterByType DEFLATE font/ttf
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE image/x-icon
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/xml
# Remove browser bugs (only needed for really old browsers)
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
Header append Vary User-Agent
</IfModule>

salvare e uscire da VI (comando :wq );

Nel caso di Apache 2.4 occorre verificare che sia presente il modulo filter_module:

grep -ir "mod_filter.so" /etc/httpd/conf.modules.d/00-base.conf

apachectl -M | grep filter

A questo punto riavviare il servizio:

service httpd restart

Nginx

Creare il file gzip.conf:

touch /etc/nginx/conf.d/gzip.conf

Aprire il file con VI (o un altro editor testuale):

vi /etc/nginx/conf.d/gzip.conf

e ora aggiungere la configurazione di gzip (qui un esempio, maggiori indicazioni si possono trovare sulla documentazione di nginx):

gzip on;
gzip_disable "MSIE [1-6]\\.(?!.*SV1)";
gzip_proxied any;
gzip_comp_level 5;
gzip_types text/plain text/css application/javascript application/x-javascript text/xml application/xml application/rss+xml text/javascript image/x-icon image/bmp image/svg+xml;
gzip_vary on;

ora verificare che sia tutto corretto:

nginx -t

e quindi riavviare il servizio:

service nginx reload

 

Exit mobile version