Os navegadores da Web armazenam em cache o conteúdo por https

245

O conteúdo solicitado por https ainda será armazenado em cache pelos navegadores da Web ou eles consideram esse comportamento inseguro? Se este for o caso, existe alguma maneira de dizer a eles que está tudo bem em cache?

slashnick
fonte
Sim, os navegadores armazenarão o conteúdo em cache por HTTPS. Verifique este link neopatel.blogspot.com/2010/02/…
Kalpesh Patel
@ KalpeshPatel, isso depende das configurações do usuário . Alguns definiram o cache como desativado para todas as páginas HTTPS blogs.msdn.com/b/ieinternals/archive/2010/04/21/…
Pacerier 15/15

Respostas:

134

Por padrão, os navegadores da web devem armazenar em cache o conteúdo sobre HTTPS, da mesma forma que sobre HTTP, a menos que seja explicitamente informado o contrário por meio dos Cabeçalhos HTTP recebidos.

Este link é uma boa introdução à configuração de cache nos cabeçalhos HTTP.

existe alguma maneira de dizer a eles que está tudo bem em cache?

Isso pode ser alcançado definindo o max-agevalor no Cache-Controlcabeçalho como um valor diferente de zero, por exemplo

Cache-Control: max-age=3600

dirá ao navegador que esta página pode ser armazenada em cache por 3600 segundos (1 hora)

ConroyP
fonte
Se um usuário visse mysite.com e baixasse o style.css, quando acessasse mysite.com , o style.css seria solicitado novamente?
26411 Frank
12
Não sei se estamos todos na mesma página aqui. Estamos falando sobre se o conteúdo HTTPS será armazenado em cache por padrão ou se estamos perguntando se será armazenado em cache assumindo determinados cabeçalhos de resposta HTTP? O link para o tutorial de cache da Web ao qual você vinculou a partir de Mark Nottingham indica que o conteúdo seguro (por exemplo, HTTPS) ou autenticado não será armazenado em cache, a menos que o cabeçalho de controle de cache indique que é conteúdo público.
Edward Shtern 18/05
2
Tropecei em um bom artigo: blog.httpwatch.com/2011/01/28/top-7-myths-about-https
roberkules
1
O Firefox removeu o requisito do Cache-Control: público anos atrás.
GreenReaper
1
Esta declaração "os navegadores da web devem armazenar em cache o conteúdo em HTTPS" está errada para mim. Por que eles deveriam fazer isso? Além disso, verifique o comentário abaixo de uma pessoa da equipe do chromium " code.google.com/p/chromium/issues/detail?id=110649#c6 " Ele diz "De fato, nada está sendo armazenado em cache (no cache persistente)"
Teoman shipahi
192

A partir de 2010, todos os navegadores modernos e atuais armazenam em cache o conteúdo HTTPS por padrão, a menos que seja explicitamente instruído a não fazê-lo.

É não necessárias para configurar cache-control:publicpara que isso aconteça.

Fonte: Chrome , IE , Firefox .

MarkR
fonte
6
Parece então que a tendência geral é permitir o armazenamento em cache de objetos HTTPS; isso normalmente é uma coisa boa, pois os desenvolvedores devem dizer ao navegador para não armazenar objetos em cache se forem sensíveis à privacidade e permitir que o façam quando não o são (por exemplo, imagens, css, o que é muito prejudicial ao desempenho, especialmente em HTTPS). Obrigado por isso.
MarkR
2
É compatível com RFC armazenar em cache automaticamente os recursos HTTPS sem cache-control:public?
Pacerier 5/05
Os navegadores @Pacerier consideram o literal "pedido de comentários" da RFC. na maioria das vezes, os RFCs mudam para refletir o que já está nos navegadores.
Gcb # 23/14
0

Https é armazenado em cache por padrão. Isso é gerenciado por uma configuração global que não pode ser substituída pelas diretivas de cache definidas pelo aplicativo. Para substituir a configuração global, selecione o miniaplicativo Opções da Internet no painel de controle e vá para a guia Avançado. Marque a caixa "Não salvar páginas criptografadas no disco" na seção "Segurança", mas o uso do HTTPS por si só não afeta se o IE decide ou não armazenar em cache um recurso.

O WinINet apenas armazena em cache as respostas HTTP e FTP e não a resposta HTTPS. https://msdn.microsoft.com/en-us/library/windows/desktop/aa383928%28v=vs.85%29.aspx

Ashim Nath
fonte