Torna al blog
performancehostingcaching

Che cos'è la cache e perché rende il sito più veloce?

Fare caching significa conservare un risultato, così da non doverlo ricreare o recuperare ogni volta. Senza cache il tuo server ricostruisce ogni pagina per ogni visitatore, anche se non è cambiato nulla; con la cache il visitatore riceve subito il risultato conservato. I livelli sono cinque: la cache del browser, la cache di un CDN, la cache delle pagine, la cache degli oggetti e la cache opcode di PHP. Se una modifica non compare, quasi sempre stai guardando uno di questi livelli.

I cinque livelli, dal visitatore al server

  • Cache del browser. Il browser del visitatore conserva in locale immagini, fogli di stile e script. Una seconda pagina del tuo sito si carica così molto più in fretta.
  • Cache del CDN. Un CDN come Cloudflare conserva copie dei tuoi file su server vicini al visitatore. Di norma si tratta di file statici come immagini, CSS e JavaScript, non delle pagine stesse.
  • Cache delle pagine. Viene conservata la pagina HTML già costruita per intero. Per il visitatore successivo PHP e il database non entrano più in gioco. È il livello che rende di più sui siti che cambiano poco. In WordPress se ne occupa un plugin di cache.
  • Cache degli oggetti. Le risposte del database vengono conservate in memoria, di solito con Redis o Memcached. Aiuta soprattutto i siti molto frequentati e i negozi online, dove gli stessi dati vengono richiesti centinaia di volte al minuto.
  • Cache opcode. PHP traduce prima ogni script in istruzioni eseguibili. OPcache conserva quella traduzione in memoria, così non va rifatta a ogni richiesta. Non te ne accorgi, se non per il fatto che un file PHP modificato a volte diventa attivo solo poco dopo.

"Non vedo la mia modifica"

La confusione classica. Cambi qualcosa, ricarichi la pagina e non vedi alcuna differenza. Non concludere che la modifica sia fallita: passa in rassegna i livelli, dal più vicino al più lontano:

  1. Apri la pagina in una finestra privata. Quella finestra parte senza file conservati e senza accesso effettuato. Se lì la modifica la vedi, era la cache del tuo browser.
  2. Forza un ricaricamento completo: Ctrl+F5 su Windows, Cmd+Shift+R su un Mac. Il browser scarica allora di nuovo tutti i file della pagina.
  3. Svuota la cache delle pagine del tuo CMS o del plugin di cache. Se la modifica la vedi quando hai effettuato l'accesso e non nella finestra privata, la causa è quasi certamente questa: agli utenti che hanno effettuato l'accesso di norma non vengono servite pagine in cache.
  4. Svuota la cache del CDN, se ne usi uno. Con Cloudflare puoi svuotare un solo indirizzo oppure tutto.
  5. Hai modificato un foglio di stile o uno script? Sono quelli che restano più a lungo, perché i browser possono conservarli per settimane. Dai al file un nuovo numero di versione nel nome o dopo il punto interrogativo nell'indirizzo; così ogni browser lo considera un file nuovo.
  6. Controlla di aver modificato il file giusto. Una modifica fatta in una copia o in un tema non attivo non diventa mai visibile.

Quando svuotare la cache

  • dopo una modifica alla grafica, al menu, al piè di pagina o a un widget, perché compaiono in ogni pagina
  • dopo un aggiornamento del CMS, del tema o di un plugin
  • dopo un trasferimento o il passaggio a https, così nelle pagine conservate non restano vecchi indirizzi

Un buon plugin di cache svuota da solo la pagina che stai modificando. Svuotare ogni volta l'intera cache è controproducente: dopo, il server deve ricostruire tutte le pagine.

Che cosa non va mai in cache

Le pagine che cambiano da visitatore a visitatore: il carrello, la cassa, l'account e i moduli con un codice di sicurezza. Se finiscono nella cache delle pagine, un visitatore vede i dati di un altro, oppure un modulo funziona una volta sola. I plugin di cache di solito escludono da soli le pagine standard di WooCommerce; ricontrolla dopo aver riorganizzato il negozio.

Errori frequenti

  • Due plugin di cache insieme. Ciascuno conserva il risultato dell'altro, e lo svuotamento non è mai completo. Scegline uno.
  • Usare la cache per nascondere un sito lento. Una pagina che senza cache impiega otto secondi resta lenta per il primo visitatore e per ogni cliente che ha effettuato l'accesso. Cerca prima la causa; vedi perché il mio sito è diventato improvvisamente lento.

Per WordPress l'approccio completo, di cui la cache è solo una parte, è su velocizzare WordPress. Come si misura la velocità lo leggi in che cosa sono i Core Web Vitals.

Domande frequenti

Perdo qualcosa se svuoto la cache?

No. La cache contiene solo copie. Le tue pagine, le immagini e il database restano intatti; le copie vengono ricostruite alla visita successiva.

Come svuoto la cache sul telefono?

Apri la pagina in una scheda privata: è la prova più rapida. Per svuotarla davvero vai nelle impostazioni del browser, alla voce privacy o dati di navigazione. I cookie non serve cancellarli.

La cache DNS è la stessa cosa?

No. La cache DNS ricorda a quale server punta il tuo nome a dominio, non che cosa c'è sulla pagina. Conta solo dopo un trasferimento o una modifica DNS. Vedi perché una modifica DNS a volte ci mette così tanto.

Un sito piccolo ha bisogno della cache?

La cache del browser e la cache opcode aiutano qualsiasi sito, e di norma sono già attive. Una cache delle pagine conviene non appena il sito gira su un CMS. Una cache degli oggetti ha senso solo con molti visitatori, un negozio online o un'area riservata.

Non ci riesci?

Se una modifica resta invisibile dopo aver svuotato ogni livello, mandaci tramite contatto l'indirizzo della pagina e che cosa hai modificato di preciso.

#che cos è la cache#cache sito web#object caching wordpress
Trust Guard Security Scanned
Chiama ora
Invia un'e-mail