2012-01-16 10 views
5

Sto sviluppando un sito Web che è attualmente in fase di test.Aggiornamento forzato della cache del browser per più risorse (CSS e Javascript)

Ogni volta che apporto alcune modifiche significative a Javascript e CSS, i miei tester mi informano di molti nuovi bug, alcuni dei quali sono piuttosto gravi. Tuttavia, tutti sono causati dai browser che memorizzano nella cache gli script JS e il file CSS e utilizzano le vecchie versioni con il nuovo HTML. Inoltre, poiché questa è una versione di prova, ho circa 10 file JS separati collegati con i tag <script type="text/javascript" src="..."></script>. È possibile aggiornare manualmente il foglio di stile, ma chiedere ai tester di esaminare ogni file JS e aggiornarlo è un po 'eccessivo.

C'è un modo per informare il browser che i file collegati sono stati aggiornati e devono essere ricaricati?

risposta

8

Aggiungere un "cache buster" all'URL, ad esempio, aggiungere un parametro stringa di query.

<script src="foo.js"></script> 

diventa

<script src="foo.js?v=1"></script> 

Se si stanno facendo in scena stampa, è possibile utilizzare solo la versione del rilascio come il busting della cache.

1

Come aggiungere una stringa casuale al nome del file? Ad esempio timestamp.

style.css?123456 

Questo dovrebbe aiutare.

Problemi correlati