Sto provando a testare la configurazione della cache, voglio che la mia pagina rimanga nella cache per 1 minuto prima che la richiesta raggiunga nuovamente il server.I browser sembrano ignorare le istruzioni di controllo della cache della risposta
Utilizzando questa semplice pagina Test.asp che ha un link a se stesso:
<% Option Explicit %>
<%
Response.Expires = 1
Response.CacheControl = "private, max-age=60"
%>
<html>
<head><title>test</title></head>
<body>
<% =Now() %>
<br />
<a href="test.asp">test</a>
</body>
</html>
Questo funziona perfettamente sul mio computer di sviluppo http://localhost/test.asp, (cliccando sul link non aggiorna il datetime stampato per 1 min).
Tuttavia non ha l'effetto desiderato quando inserisco la pagina sul server di produzione. Dopo pochi secondi di clic sul collegamento ottengo un nuovo datetime che indica che la richiesta ha raggiunto il server web.
ho usare strumento dev Chrome e vedere queste intestazioni di risposta:
HTTP/1.1 200 OK
Cache-Control: private, max-age=60
Content-Type: text/html
Expires: Tue, 12 May 2015 19:16:52 GMT
Last-Modified: Tue, 12 May 2015 19:10:00 GMT
Server: Microsoft-IIS/7.5
X-Powered-By: ASP.NET
Date: Tue, 12 May 2015 19:15:55 GMT
Content-Length: 205
Qualcuno può aiutare a spiegare perché non funziona sul server prod?
aggiornamento ho provato con Chrome, Firefox e IE, e anche 2 pagine Test.asp e Test2.asp, avendo un collegamento alla altra pagina, ed entrambi hanno dato esattamente lo stesso problema, dopo 8-12 sec , la pagina si aggiorna invece di aspettare 60 secondi prima di aggiornare.
Come stai testando? Aggiorna nella stessa scheda? Questo potrebbe essere un problema di Chrome: http://stackoverflow.com/questions/11245767/is-chrome-ignoring-control-cache-max-age Il motivo per cui ha funzionato sul tuo ambiente di sviluppo potrebbe essere che Chrome fa cose strane con il url 'localhost' comunque .. – AardVark71
Sto testando cliccando sul collegamento ipertestuale nella pagina di test che si collega a se stesso. L'utilizzo del pulsante di aggiornamento invia sempre la richiesta al server che è logica. Proverò con altri browser e forse anche più di una pagina. – Jonathan
Ottimo! ora che ho appena iniziato una taglia e provato di nuovo lo stesso codice, il problema è semplicemente scomparso magicamente, che diamine: | – Jonathan