Cos’è la compressione Gzip e perché è importante
La compressione Gzip è una tecnologia che riduce le dimensioni dei file trasmessi tra server e browser. Quando un visitatore richiede una pagina, il server comprime il contenuto (HTML, CSS, JavaScript) con l’algoritmo Gzip prima di inviarlo, e il browser lo decomprime per visualizzarlo. Il risultato è una riduzione del peso della pagina del 70-90%, con un impatto diretto sui tempi di caricamento. Per un tipico sito WordPress, una homepage da 300 KB può scendere a 30-60 KB dopo la compressione Gzip. Questo significa pagine che si caricano in 0.5 secondi invece di 2 secondi su connessioni lente.
Gzip è supportato da tutti i browser moderni (Chrome, Firefox, Safari, Edge) e da tutti i server web. Non richiede modifiche al codice o ai contenuti: si configura a livello di server web o tramite plugin WordPress. È una delle ottimizzazioni più semplici da implementare e con il miglior rapporto costo-beneficio.
Abilitare Gzip su Apache con mod_deflate
Se il tuo WordPress è ospitato su Apache (o LiteSpeed), il modulo mod_deflate abilita la compressione. Aggiungi queste righe nel file .htaccess nella root del sito:
<IfModule mod_deflate.c> AddOutputFilterByType DEFLATE text/html text/css text/javascript application/javascript application/json application/xml text/plain text/xml image/svg+xml </IfModule>
Per verificare che mod_deflate sia attivo, crea un file PHP con <?php phpinfo(); ?> e cerca “mod_deflate” nella sezione Apache loaded modules. Se non è presente, contatta il tuo hosting per abilitarlo. Su alcuni hosting condivisi, mod_deflate è preinstallato e devi solo aggiungere le regole .htaccess.
Per performance ottimali, aggiungi anche la compressione dei font (WOFF, WOFF2) e dei file SVG, che spesso costituiscono una parte significativa del peso della pagina. AddOutputFilterByType DEFLATE application/font-woff application/font-woff2 image/svg+xml
Abilitare Gzip su Nginx con gzip module
Nginx gestisce la compressione tramite il modulo gzip. Aggiungi queste direttive nel blocco server o http della configurazione:
gzip on; gzip_types text/plain text/css application/json application/javascript text/xml application/xml image/svg+xml application/font-woff application/font-woff2; gzip_comp_level 5; gzip_min_length 256; gzip_vary on; gzip_proxied any; gzip_disable "msie6";
Il parametro gzip_comp_level va da 1 (veloce, compressione leggera) a 9 (lento, massima compressione). Il livello 5 è il miglior compromesso: comprime bene senza appesantire la CPU. Livelli superiori (6-9) danno pochi vantaggi aggiuntivi (1-2%) ma aumentano il tempo di CPU in modo significativo. gzip_min_length imposta la dimensione minima per comprimere: file sotto i 256 byte non vengono compressi perché l’overhead annulla il beneficio.
Plugin WordPress per la compressione
Se non hai accesso alla configurazione del server (hosting condiviso), i plugin WordPress offrono la compressione Gzip con un clic. W3 Total Cache include la compressione Gzip nelle opzioni di performance: attiva “Enable HTTP (gzip) compression” e il plugin aggiunge automaticamente le regole .htaccess. WP Rocket integra la compressione e la genera anticipatamente per i file cacheati, riducendo il carico CPU. Cache Enabler, un plugin gratuito e leggero, genera file HTML compressi staticamente in formato .gz e serve la versione precompressa quando il browser la supporta.
Attenzione: se sia il server che il plugin tentano di comprimere, potresti avere doppia compressione, che invece di ridurre la dimensione la aumenta e rallenta il caricamento. Disabilita Gzip a livello server se usi un plugin che lo gestisce, o viceversa.
Verificare che Gzip funzioni
Dopo la configurazione, verifica che la compressione sia attiva. Il metodo più rapido sono gli strumenti per sviluppatori del browser (F12 in Chrome/Firefox): apri la scheda Network, ricarica la pagina, clicca su una risorsa HTML, controlla l’header Response Content-Encoding: gzip. Se presente, la compressione è attiva. Puoi anche usare strumenti online come GiftOfSpeed.com, CheckGzipCompression.com o il PageSpeed Insights di Google, che segnalano se la compressione è abilitata e mostrano la riduzione percentuale del peso. Per test da riga di comando: curl -H "Accept-Encoding: gzip" -I https://tuosito.com e verifica la presenza di Content-Encoding: gzip nella risposta.
Brotli: l’alternativa moderna a Gzip
Brotli è un algoritmo di compressione sviluppato da Google, con prestazioni superiori a Gzip. Comprime dal 20 al 30% in più rispetto a Gzip per file HTML, CSS e JS, a parità di qualità. Il browser invia l’header Accept-Encoding: br e il server risponde con la versione Brotli se supportata. Brotli è supportato da Chrome, Firefox, Safari (dalla versione 14) e Edge. Per Nginx, il modulo brotli è disponibile come pacchetto separato. Per Apache, mod_brotli offre supporto. La maggior parte dei CDN (Cloudflare, Bunny.net, Fastly) supporta Brotli automaticamente. Se il tuo server lo supporta, abilita Brotli come priorità e Gzip come fallback per browser che non supportano Brotli.
Configurazione Nginx per Brotli: brotli on; brotli_types text/plain text/css application/json application/javascript text/xml application/xml image/svg+xml; brotli_comp_level 6; Nota: i livelli di compressione Brotli non sono direttamente comparabili a Gzip. Per il precompressione statica dei file (caso d’uso comune con plugin cache), Brotli al livello 11 produce file più piccoli del 15-20% rispetto a Gzip al livello 9.
Impatto sulla Speed Index e sul page weight
La compressione Gzip influenza direttamente metriche di performance critiche. Il page weight (peso totale della pagina) si riduce del 70-90%, il che significa meno dati da trasferire sulla rete. Questo si traduce in un Speed Index più basso (la pagina appare completa più velocemente). Il Time to First Byte (TTFB) rimane invariato (la compressione avviene dopo la generazione della pagina), ma il Time to Last Byte (TTLB) migliora sensibilmente perché i pacchetti compressi richiedono meno round trip TCP. Per utenti su reti mobili 3G/4G, il guadagno è particolarmente significativo: una pagina da 500 KB compressa a 80 KB si carica in 1-2 secondi invece di 5-8 secondi.
Conclusioni
Abilitare la compressione Gzip su WordPress è una delle ottimizzazioni più semplici ed efficaci. Che tu usi Apache, Nginx o un plugin, la configurazione richiede pochi minuti e il risultato è immediato: pagine più leggere, caricamento più veloce e migliori performance SEO. Per siti moderni, considera Brotli come alternativa superiore. In ogni caso, la compressione è un passo obbligato in qualsiasi strategia di ottimizzazione delle performance: non implementarla significa lasciare sul tavolo un miglioramento del 70-90% del peso della pagina con uno sforzo quasi nullo.
