Domanda

Ho una pagina web che ha sempre bisogno di essere sempre aggiornati. Non voglio il browser di cache di esso. A tal fine, questo meta tag è incorporato con la pagina:

<meta name="Expires" content="Tue, 01 Jun 1999 19:58:02 GMT"> 

Tuttavia, alcuni browser sembrano ignorarlo. Chrome è particolarmente male, anche se altri browser tendono a fare la stessa cosa.

Quando prendo la pagina dalla barra dei preferiti, la maggior parte del tempo, non ha nemmeno colpito il server, appena lo carica dalla cache. Se io quindi premere F5, lo fa andare al server e recuperare una nuova copia.

Mi sto perdendo qualcosa di semplice? Ho pensato che il scade meta tag è il modo in cui è fatto.

Ciò sta accadendo su un IIS 5.0 in Windows 2000.


In conclusione: si presenta come meta tag all'interno del codice HTML praticamente non fare nulla. Tuttavia, l'impostazione della scadenza tag all'interno del HTTP fa il trucco bene.

È stato utile?

Soluzione

Invia il tuo scade intestazioni utilizzare il server. In particolare, se si sta utilizzando Apache, guardare a questo:

http://httpd.apache.org/docs/2.0/mod/ mod_expires.html

Altri suggerimenti

Questo dovrebbe aiutare a:

<meta http-equiv="cache-control" content="no-cache" />

È anche possibile configurare il meccanismo di cache contenuti statici tramite IIS; si può imparare a fare ecco: http://support.microsoft.com/kb/247404.

Si desidera inviare un'intestazione Expires impostato su una data nel passato (come la vostra meta-tag).

Valida è l'intestazione della cache più ampiamente rispettati, ma si può anche utilizzare le cose come Last-Modified, o Etags per ottenere un controllo più preciso.

metatag sono un mezzo alquanto obsoleti dall'insediamento protocolli caching, e la maggior parte delle proprietà di controllo della cache meta sono piuttosto obsoleti (per esempio NO-CACHE). Un sacco di agenti utente li ignorano.

C'è un grande articolo che ho usato per leggere il caching del browser ans caching in generale:

http://www.mnot.net/cache_docs/

Si spiega in dettagli elevati cosa funziona e cosa no, cosa è meglio fare.

In sintesi ci sono un sacco di modi (tag html, intestazioni HTTP) e tipi di cache (proxy del browser, gateway)

Invia Cache-Control: no-cache al cliente entro le intestazioni di risposta.
Si prega di specificare quale piattaforma stai usando per dare una risposta migliore.

<meta http-equiv="Cache-Control" content="private, no-store" />

è davvero tutto il necessario, come indicato qui https://youtu.be/TNlcoYLIGFk?t= 654 di Andrew Betts, eletto membro del W3C TAG.

Con questo, non sarà necessario pragma o scade. Infatti, quanto sopra sovrascriverà il comando della scadenza.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top