Compressione gzip per contenuto e file del sito tramite htaccess



(Aggiornato il 14/01/2022)
Esistono due funzioni che permettono la compressione gzip per contenuto e file del sito tramite htaccess, uno viene definito mod_gzip e l’altro mod_deflate.

Questo “metodo” viene identificato anche con il nome di “gzip” che permette la compressione gzip del contenuto e file del sito fornendo cosi all’eventuale browser che ne farà richiesta un contenuto più compresso che di conseguenza ridurrà i tempi di risposta HTTP da restituire al browser, quindi con una notevole riduzione dei tempi di caricamento.








Il metodo di compresione gzip è possibile solamente su server linux che utilizzano apache, la differenza tra il mod_gzip e mod_deflate è semplicemente che il primo viene utilizzato per Apache versione 1.3 (oramai sostituita dalla versione 2) mentre il secondo per versioni Apache 2 e superiori.


Richiesta file dal browser senza compressione gzip


Il seguente codice per attivare la compressione gzip per contenuto e file del sito va inserito alle direttive del file htaccess facendo molta attenzione a non commettere errori, è testato e funzionante cosi come lo vedete e potete utilizzarlo senza particolari problemi a meno che non cerchiate delle configurazioni particolari per siti che utilizzano caratteristiche particolari.

Direttive htaccess per attivare compressione contenuto tramite gzip:

 

# DEFLATE compressione
# 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
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
# FINE DEFLATE



La direttiva “AddOutputFilterByType” indica su quale specifico contenuto e file vogliamo attivare la compressione gzip.

La direttiva “BrowserMatch” specifica le direttive per alcuni browser e/o versioni obsolete per i quali queste impostazioni non sono valide.

Per verificare la compressione gzip potete utilizzare dei tools direttamente online su alcuni siti che forniscono i migliori strumenti per analizzare siti internet.


Controllo Compressione gzip Tramite GTmetrix


Altra possibilità per verificare se la compressione gzip è attiva è utilizzare il componente aggiuntivo Web Developer Toolbar per browser mozzilla firefox.

Controllo Compressione gzip Tramite Firefox


Per eventuali modifiche personalizzate delle direttive potete leggere direttamente sul sito di Apache Foundation i documenti di riferimento per il mod_deflate.


Vietata la Riproduzione.
Protezione Copyright

6 commenti
  1. Stefano dice:

    Ho aggiunto entrambi i file .htaccess browser cache e Gzip, non ce ne sono altri da modificare giusto?
    GT Metrix da 99 gzip compression, funziona!

    Rispondi
  2. Stefano dice:

    Oggi gt metrix ha cambiato idea. Compressing the following resources with gzip could reduce their transfer size by 417.4KiB (71% reduction)
    Qualche idea sul motivo?

    Rispondi

Lascia un Commento

Vuoi partecipare alla discussione?
Sentitevi liberi di contribuire!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.