Hai aggiornato il sito, ma il cliente continua a vedere la versione vecchia. Frustrante, vero? Quasi sempre il colpevole è la cache del browser. La buona notizia è che esiste una tecnica precisa per risolverlo: il cache busting. Vediamo come funziona.
Perché esiste la cache
Per andare veloce, il browser salva una copia locale dei file di un sito (immagini, fogli di stile, JavaScript). Alla visita successiva li riusa invece di riscaricarli: pagine più rapide e meno traffico. È un'ottima cosa... finché non pubblichi una modifica.
Il problema: file vecchi serviti dal browser
Se il nome del file non cambia, il browser pensa di avere già la versione giusta e continua a mostrare quella vecchia. Il risultato: aggiornamenti che "non si vedono" senza svuotare manualmente la cache — cosa che nessun utente farà.
Soluzione 1: la query string di versione
Si aggiunge al file un parametro che cambia a ogni modifica:
<link rel="stylesheet" href="/css/base.css?v=1718031040">
<script src="/js-build/app.js?v=1718031040"></script>
Quando il numero cambia, il browser considera il file "nuovo" e lo riscarica. È leggero e immediato.
Soluzione 2: l'hash nel nome del file
In alternativa, lo strumento di build inserisce nel nome del file un codice che dipende dal contenuto (es. app.9f3a2c.js). Se il contenuto cambia, cambia il nome, e la cache vecchia diventa irrilevante. È l'approccio più robusto per la produzione.
Cosa significa per il tuo progetto
Con il cache busting il tuo sito resta velocissimo grazie alla cache, ma ogni aggiornamento è visibile subito, senza chiedere nulla agli utenti. È un dettaglio invisibile che distingue un sito curato da uno approssimativo. Contattami per un sito fatto bene fin nei dettagli.
Collegato: minificazione e offuscamento e git come rete di sicurezza.