- Home
- Categorie
- Digital Marketing
- Grafica, Visual Design & UX
- CACHE, gioie e dolori
-
CACHE, gioie e dolori
@mpmisco in pratica devi svuotare la cache di WordPress, puoi farlo in diversi modi:
- con plugin: a seconda del plugin di caching che usi (uno dovrai usarlo!!), trovi l'impostazione, ad esempio io con Autoptimize ho un'opzione "pulisci la cache CSS/JS"
- senza plugin: accedi tramite FTP, nel file wp-config.php aggiungi questa riga di codice:
define('ENABLE_CACHE', false);
in questo modo viene (momentaneamente) disabilitata, poi se vuoi riattivarla basta che elimini questa stringa; per eliminare i file di cache già presenti, nella cartella wp-content trovi una sottocartella cache, elimini tutto il suo contenuto (nel dubbio, sempre meglio eliminare il suo contenuto e non direttamente la cartella!)
-
@mpmisco ah certo, ho letto male io beh che dire: ogni CMS ha la cache salvata in un certo modo (quindi una sua cartella, a cui accedi sempre tramite FTP), concettualmente non cambia, si tratta appunto di sapere come quel CMS organizza le cose; analogamente, se il CMS dispone di plugin di caching, la procedura "svuota cache" è sempre intuitiva, analoga quindi ai plugin di WordPress.
-
Miglior Risposta
@mpmisco prova a rinominare i file da nomefile.css?v=1.0 a nomefile_1.css e simili
però la teoria vuole che anche con ?v=1.0 dovrebbe vederlo come nuovo file, mahnon è che hai tipo un server cache level che ti cacha tutto e strippa le query? magari ti basta flushare lato server e sei a posto
-
@mpmisco parlo per quel che ne so io, quindi può anche darsi che sparo solo cazzate, quindi prego chiunque di correggermi e bacchettarmi nel caso...
come dicevo, puoi cambiare il nome del file oppure controllare le direttive di cache control, oppure controllare se per caso non c'è attivo un sistema di cache server level ( esempio siteground se non ricordo male)
https://medium.com/@codebyamir/a-web-developers-guide-to-browser-caching-cc41f3b73e7c#ab9e
alla voce Cache busting con il versioning e fingerprintsotto sezione append query parla di known issues
https://gtmetrix.com/remove-query-strings-from-static-resources.html
che non ho capito se sia o meno deprecatopoi dipende da come hai realizzato il sito , su quale hosting sta e quali eventuali servizi ci hai aggiunto ( cdn ad es. ecc)
-
@mpmisco non ne sono sicuro, ma concettualmente mi viene in mente questo: se elimini fisicamente un file JS, CSS, la pagina che lo richiama fa riferimento ad un file che non esiste; quindi anziché modificare il file, prima fai così, lo elimini proprio. Poi copi la nuova versione, anche con lo stesso nome di prima. Non vorrei sbagliare, ma credo che a questo punto dovrebbe rifare da zero il caricamento (dato che per un po' faceva riferimento ad una risorsa non esistente) e quindi caricare la versione aggiornata. Di preciso non ho mai lavorato in questo modo, ma concettualmente mi torna, può avere senso la cosa.
1 Risposta -
@giulio-marchesi tu ragioni solo a 1 dimensione, quella del tuo browser. devi ragionare con tutti quelli del mondo.
se cancelli un file per "un po di tempo" come dici tu, significa servire a tutto il mondo un sito con un file mancante, e quindi con un sito non visibile correttamente.
poi , se anche fosse, e ricarichi il vecchio file uguale . il browser lo continuera ad avere in cache ,perche l'ultima volta che è passato dal sito, probabilmente avrà ricevuto la direttiva "tieni tutti i file css in locale per 1 anno"
quindi ti servirà lo stesso vecchio file. a meno che tu non tenga il sito senza quel file per un anno intero....ne consegue che se vuoi invalidare completamente una cache, la soluzione migliore è cambiare la url di quell'asset.
se con l'aggiunta delle query ci sono problemi noti. cambiando il nome del file, il problema non lo hai piu,
sempre e soltanto se non hai anche livelli servr di caching ( nel qualcaso se non flushi anche quelli , ti continueranno a servire addirittura le url dei vecchi assets)