2008-10-06 10 views
234

¿Los navegadores web aún almacenarán en caché el contenido solicitado sobre https o consideran este comportamiento inseguro? Si este es el caso, ¿hay alguna forma de decirles que está bien almacenar en caché?¿Los navegadores web almacenarán en caché el contenido en https

+0

Sí navegadores almacenar en caché el contenido a través de HTTPS comprobar este enlace http://neopatel.blogspot.com/2010/02/firefox3-and-caching-https-content.html –

+0

@KalpeshPatel, Eso depende de la ** ajustes de usuario. Algunos han configurado el almacenamiento en caché como deshabilitado para ** todas ** páginas HTTPS http://blogs.msdn.com/b/ieinternals/archive/2010/04/21/internet-explorer-may-bypass-cache-for-cross- domain-https-content.aspx – Pacerier

Respuesta

126

De forma predeterminada, los navegadores web deben almacenar en caché el contenido a través de HTTPS al igual que a través de HTTP, a menos que se indique explícitamente lo contrario a través del HTTP Headers recibido.

This link es una buena introducción a la configuración del ajuste de caché en los encabezados HTTP.

¿Hay alguna forma de decirles que está bien almacenar en caché?

Esto se puede lograr ajustando el valor max-age en la cabecera Cache-Control a un valor distinto de cero, por ejemplo,

Cache-Control: max-age=3600 

le dirá al navegador que esta página puede almacenar en caché para los 3600 segundos (1 hora)

+0

Si un usuario visitara http://mysite.com y descargara style.css, cuando vaya a https://mysite.com ¿se volvería a solicitar style.css? – Frank

+10

No estoy seguro de que estemos todos en la misma página aquí. ¿Estamos hablando de si el contenido HTTPS se almacenará en la memoria caché de forma predeterminada, o si se le preguntará si se almacenará en caché asumiendo ciertos encabezados de respuesta HTTP? El enlace al tutorial de almacenamiento en caché web al que se ha vinculado desde Mark Nottingham en realidad indica que el contenido seguro (es decir, HTTPS) o autenticado no se almacenará en caché a menos que el encabezado de control de caché indique que se trata de contenido público. –

+2

Tropezado con un buen artículo: http://blog.httpwatch.com/2011/01/28/top-7-myths-about-https/ – roberkules

188

A partir de 2010, todos, navegadores actuales-ish modernas caché HTTPS contenido por defecto, a menos que no dijo explícitamente a.

Es no requerido para establecer cache-control:public para que esto ocurra.

Fuente: Chrome, IE, Firefox.

+6

Parece entonces que la tendencia general es hacia el almacenamiento en caché de objetos HTTPS; esto normalmente es una buena cosa, ya que los desarrolladores deberían decirle al navegador que no almacene objetos en absoluto si son sensibles a la privacidad, y permitir que lo haga cuando no lo están (por ejemplo, imágenes, css, que es especialmente benéfico para el rendimiento). en HTTPS). Gracias por eso. – MarkR

+2

¿Cumple RFC con la caché automática de recursos HTTPS sin 'cache-control: public'? – Pacerier

+0

@ Los navegadores de Pacerier consideran RFC literal "solicitud de comentarios". la mayoría de las veces RFC cambian para reflejar lo que ya está en los navegadores. – gcb

0

Https está en caché por defecto. Esto se gestiona mediante una configuración global que no puede ser anulada por las directivas de caché definidas por la aplicación. Para anular la configuración global, seleccione la aplicación de Opciones de Internet en el panel de control y vaya a la pestaña avanzada. Marque la casilla "No guardar páginas encriptadas en el disco" en la sección "Seguridad", pero el uso de HTTPS solo no tiene impacto sobre si IE decide o no almacenar en caché un recurso.

WinINet solo almacena en caché las respuestas HTTP y FTP, no la respuesta HTTPS. https://msdn.microsoft.com/en-us/library/windows/desktop/aa383928%28v=vs.85%29.aspx

Cuestiones relacionadas