Non sono sicuro che ciò possa davvero aiutarti, ma è così che la cache dovrebbe funzionare su qualsiasi browser. Quando il browser richiede un file, deve sempre inviare una richiesta al server a meno che non sia presente una modalità "offline". Il server leggerà alcuni parametri come data modificata o etags.
Il server restituirà una risposta di errore 304 per NOT MODIFIED e il browser dovrà utilizzare la sua cache. Se etag non convalida sul lato server o la data modificata è inferiore alla data modificata corrente, il server deve restituire il nuovo contenuto con la nuova data modificata o etags o entrambi.
Se non ci sono dati di memorizzazione nella cache inviati al browser, suppongo che il comportamento sia indeterminato, il browser potrebbe o meno memorizzare nella cache file che non dicono come vengono memorizzati nella cache. Se si impostano i parametri di memorizzazione nella cache nella risposta, memorizzerà correttamente i file nella cache e il server potrebbe scegliere di restituire un errore 304 o il nuovo contenuto.
Così è come dovrebbe essere fatto. L'uso di parametri casuali o il numero di versione negli URL è più simile a un hack di qualsiasi altra cosa.
http://www.checkupdown.com/status/E304.html
http://en.wikipedia.org/wiki/HTTP_ETag
http://www.xpertdeveloper.com/2011/03/last-modified-header-vs- scade-header-vs-ETAG /
Dopo aver letto ho visto che c'è anche una data di scadenza. In caso di problemi, è possibile che sia stata impostata una data di scadenza. In altre parole, quando il browser memorizzerà il file nella cache, poiché ha una data di scadenza, non dovrebbe richiederlo di nuovo prima di tale data. In altre parole, non chiederà mai il file al server e non riceverà mai un 304 non modificato. Utilizzerà semplicemente la cache fino al raggiungimento della data di scadenza o alla cancellazione della cache.
Quindi questa è la mia ipotesi, hai una sorta di data di scadenza e dovresti usare gli etag modificati per ultimi o un mix di tutto e assicurarti che non ci sia una data di scadenza.
Se le persone tendono ad aggiornarsi molto e il file non viene cambiato molto, allora potrebbe essere saggio impostare una grande data di scadenza.
I miei 2 centesimi!