Guida di risoluzione

Come attivare la compressione Brotli su nginx e Apache?

20 maggio 2026

Brotli e un algoritmo di compressione senza perdita sviluppato dagli ingegneri Google Jyrki Alakuijala e Zoltan Szabadka, pubblicato come open source nel settembre 2015 e standardizzato come RFC 7932 (luglio 2016). Rispetto a gzip, Brotli produce file dal 15 al 25 percento piu piccoli per HTML, CSS e JavaScript con costo CPU comparabile grazie a un dizionario statico di 120 KB di token web comuni. Brotli e supportato da tutti i browser moderni dal 2017 (Chrome 50 aprile 2016, Firefox 44 gennaio 2016, Safari 11 settembre 2017, Edge 15 aprile 2017) e da tutti i CDN principali (Cloudflare dal 2017, Fastly, Akamai, CloudFront da settembre 2020). Identificatore Content-Encoding: br. Attivare Brotli riduce tipicamente il peso della pagina di 15 a 30 KB su una pagina di 200 KB e migliora LCP di 50 a 150 ms su mobile lento.

Quando usare Brotli

  • Sempre per HTML, CSS, JS, JSON, XML, SVG, font.
  • Mai per JPEG, PNG, WebP, AVIF, MP4, ZIP, PDF.
  • Sempre con gzip come fallback.
  • Quality 11 statica (build), 4 a 6 dinamica.

nginx

Opzione A: pacchetto

sudo apt update
sudo apt install libnginx-mod-http-brotli-filter libnginx-mod-http-brotli-static
brotli_static on;
brotli on;
brotli_comp_level 6;
brotli_min_length 256;
brotli_types text/html text/css application/javascript application/json image/svg+xml font/ttf font/otf application/xml application/ld+json;
sudo nginx -t
sudo systemctl reload nginx

Opzione B: compilare ngx_brotli

git clone --recursive https://github.com/google/ngx_brotli.git
./configure --with-compat --add-dynamic-module=./ngx_brotli
make modules

Apache

sudo a2enmod brotli
sudo systemctl restart apache2
<IfModule mod_brotli.c>
    AddOutputFilterByType BROTLI_COMPRESS text/html text/css application/javascript application/json image/svg+xml font/ttf
    BrotliCompressionQuality 5
    Header append Vary Accept-Encoding
</IfModule>

Hosting WordPress gestiti

HostStato
CloudflareDefault dal 2017
KinstaDefault
WP EngineGlobal Edge
SiteGroundSiteGround Optimizer di default
CloudwaysDisattivato, abilitare in Application Settings
Bluehost, HostGatorSpesso assente, usare Cloudflare

Verifica

curl -I -H "Accept-Encoding: br" https://example.it/style.css | grep -i content-encoding

Pre compressione statica

find ./dist -type f \( -name "*.html" -o -name "*.css" -o -name "*.js" \) -exec brotli -q 11 -f {} \;

Errori comuni

  • Dimenticare Vary: Accept-Encoding.
  • Comprimere le immagini.
  • Quality 11 dinamica.
  • Brotli senza TLS.
  • BREACH (mitigato con SameSite e senza segreti nell HTML).

Brotli vs gzip vs zstd

AlgoritmoAnnoRisparmio HTML
gzip199270 a 75 percento
Brotli201575 a 80 percento
zstd2016, Chrome 123 marzo 2024, Firefox 126 maggio 2024Simile a Brotli, piu veloce

Come InspectWP aiuta?

InspectWP analizza Content-Encoding di ogni asset.

Controlla subito il tuo sito WordPress

InspectWP analizza il tuo sito WordPress per problemi di sicurezza, problemi SEO, conformitร  GDPR e prestazioni โ€” gratuitamente.

Analizza gratis il tuo sito