Tengo una situación en la que mi servidor web (incrustado) está enviando el encabezado Expires, pero el navegador no parece respetar la configuración del encabezado, es decir, si actualizo la página, el navegador solicita los recursos que se supone deben almacenarse en caché. Los siguientes son los encabezados que están siendo intercambiados:¿El encabezado de HTTP Expires no es respetado por el navegador?
https://192.168.1.180/scgi-bin/ajax/ajax.cgi GET /scgi-bin/ajax/ajax.cgi HTTP/1.1 Host: 192.168.1.180 User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.0.11) Gecko/2009060215 Firefox/3.0.11 (.NET CLR 3.5.30729) Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: en-us,en;q=0.5 Accept-Encoding: gzip,deflate Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 Keep-Alive: 300 Connection: keep-alive Cache-Control: max-age=0 HTTP/1.x 200 OK Date: Wed, 24 Jun 2009 20:26:47 GMT Server: Embedded HTTP Server. Connection: close Content-Type: text/html ---------------------------------------------------------- https://192.168.1.180/scgi-bin/ajax/static.cgi?fn=images/logo.jpg&ts=20090624201057 GET /scgi-bin/ajax/static.cgi?fn=images/logo.jpg&ts=20090624201057 HTTP/1.1 Host: 192.168.1.180 User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.0.11) Gecko/2009060215 Firefox/3.0.11 (.NET CLR 3.5.30729) Accept: image/png,image/*;q=0.8,*/*;q=0.5 Accept-Language: en-us,en;q=0.5 Accept-Encoding: gzip,deflate Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 Keep-Alive: 300 Connection: keep-alive Referer: https://192.168.1.180/scgi-bin/ajax/ajax.cgi Cache-Control: max-age=0 HTTP/1.x 200 OK Date: Wed, 24 Jun 2009 20:26:47 GMT Server: Embedded HTTP Server. Connection: close Expires: Wed, 1 Jun 2011 20:00:00 GMT Content-Type: image/jpg ----------------------------------------------------------
El ajax.cgi devuelve una página HTML con un logotipo gráfico (a través de la secuencia de comandos static.cgi), lo que me gustaría en caché, pero el navegador está pidiendo el logo en cada refresco
veo que está trabajando a través de HTTPS. ¿Podría ser esa la razón por la que no se realiza el almacenamiento en caché como lo esperabas? ¿Puedes probar una versión solo HTTP? – mark