Como forçar a atualização sem cache no Google Chrome? [duplicado]

307

Esta pergunta já tem uma resposta aqui:

O Chrome tem um equivalente à atualização Ctrl + F5 do Firefox? Não consigo encontrar um.

Mudei meu gravatar ontem à noite e posso ver o novo no Firefox após uma atualização Ctrl + F5, mas o Chrome parece teimosamente se apegar ao gravatar antigo. Eu acho que eu poderia limpar manualmente o cache, mas se houver um comando de teclado para fazer isso, eu gostaria de saber o que é (já que também seria útil para o desenvolvimento da web).

Kip
fonte
18
CTR + R e CTRL + F5, uma ou duas vezes - geralmente resolvem o problema. Ou desative o cache em Ferramentas do desenvolvedor -> Sprog (à direita) -> Rede - Desativar cache. Recarregue a página e tente desabilitá-lo.
Piotr Kula
1
Ótimo novo recurso adicionado ao Chrome para forçar uma atualização forçada - superuser.com/a/512833/92862
Coops

Respostas:

198

A documentação do Chrome afirma que Ctrl+ F5ou Shift+ F5deve "Recarrega sua página atual, ignorando o conteúdo em cache".

Se não estiver funcionando, você pode registrar um relatório de erro , mas parece que muitas outras pessoas estão tendo o mesmo problema.

[Log de bug existente sobre esse problema] Fechado como duplicado, o problema permanece:

[ Edição: 94090 ]

William Hilsum
fonte
1
Parece que isso pode ser parcialmente culpa do Gravatar. No cabeçalho da minha imagem, eles estão enviando Last-Modified: Fri, 20 Jun 2008 12:25:23 GMT. Acho que essa é a data em que carreguei meu antigo Gravatar ou a data em que me inscrevi no Gravatar. O navegador deve estar vendo isso e pensando "ah, esse novo arquivo tem a mesma data da última modificação, então vou usar o ainda armazenado em cache". É um bug se o Chrome faz isso em um cache de atualização ignorado, mas é um bug para o Gravatar também enviar a última modificação incorreta. Entrei em contato com ambas as partes. :) #
31409 Kip
4
Carrego scripts de forma assíncrona a partir do javascript, e o Chrome parece continuar usando versões em cache mesmo após ctrl-f5, etc. A limpeza do cache funciona. Mas outra solução é abrir uma janela de navegação anônima (ctrl-shift-n), pois o modo de navegação anônima não usará o cache.
Tauren
3
O Haha Chrome é super armazenado em cache, a única maneira de superá-lo é pressionar Shift + F5 pelo menos duas vezes (realmente).
Halil Özgür
1
A equipe do Chrome deve ter vergonha de ver um bug na fila de bugs por mais de 2 anos. Eu estou muito desapontado.
9788 Brian
2
Definitivamente não está funcionando. O Chrome pode ser péssimo demais algumas vezes.
Iconoclasta
200

Nas ferramentas de desenvolvedor abertas ( Ctrl+ Shft+ Iou + + I):

  1. Selecione a guia Rede
  2. Ative a caixa de seleção Desativar cache .
  3. NÃO FECHE as ferramentas do desenvolvedor - caso contrário, o cache será reativado.

insira a descrição da imagem aqui

Chris
fonte
Não funciona para mim, tive que usar anônima.
Antony Stubbs
4
Mas por que não existe uma tecla de atalho para acionar isso!
Coops
7
Observe que o cache está desativado apenas enquanto as Ferramentas do desenvolvedor estão abertas. Se você fechá-lo, seu cache estará ativo novamente.
Icode4food
Mesmo com a caixa de seleção Desativar cache ativada e as ferramentas abertas do desenvolvedor, ainda parece haver uma diferença entre F5 e Shift + F5. Uma chamada de ajax na minha página da Web se comporta de maneira diferente, dependendo do tipo de atualização e ainda não entendo o porquê.
21815 Stefan
3
Nas ferramentas mais recentes do desenvolvedor (também podem ser acionadas pelo F12), a configuração "Desativar cache" pode ser encontrada na guia Rede.
ANRE
98

Em um Mac, é Shift + Command + R, ou mantenha pressionada a tecla Shift enquanto clica no botão recarregar (ao contrário de Command + R ou um clique normal para uma atualização regular).

Mais alguns detalhes:

Para Shift + Command + R, o cache é simplesmente ignorado e os recursos são solicitados como se não houvesse cache.

Para o Command + R, o Chrome emitirá If-Modified-Sinceou Etagsolicita ao servidor da web, mesmo para itens realmente armazenados em cache . Para a maioria dos conteúdos, se não todos, os quais o servidor deve responder 304 Not Modified. Isso é verdade para a maioria dos navegadores modernos, se não todos.

A única maneira de forçar a confiança no cache (sem que o navegador solicite possíveis alterações) parece estar clicando em um link na página da web, seguindo um link marcado como favorito ou entrando na barra de localização da URL e pressionando Return ( Command + L, Return).

No entanto: um problema conhecido de longa data no Chrome, a atualização forçada do Chrome não ignora o cache (e a atualização / atualização mais recente não atualiza ), ou talvez seja realmente um recurso do WebKit. Os sub-recursos inseridos dinamicamente não são revalidados, mesmo quando o documento que contém é recarregado , o Chrome não limpa TODOS os caches relacionados ao usar os métodos acima. Um desenvolvedor de Chromium explica :

A guia de rede das ferramentas do desenvolvedor mostra uma cascata de todos os recursos à medida que são carregados. Existem duas linhas verticais no lado direito ... uma delas é rotulada como "Evento de carregamento acionado" ao passar o mouse. Qualquer coisa carregada após esse ponto não faz parte oficialmente da página (uma página pode continuar emitindo solicitações por horas) [...] por isso NÃO será "atualizada" com qualquer combinação de f5. Isso ocorre por design.
[...] O
armazenamento em cache [de qualquer recurso, antes e depois da linha "Carregar evento disparado"] é determinado pelos cabeçalhos HTTP da resposta, não no momento em que a solicitação foi emitida.

Observe também o tweet de @ ChromiumDev :

O Desativar cache do Chrome DevTools invalida o cache do disco (ótimo para o desenvolvimento!), Mas .. somente enquanto o devtools estiver visível.

Arjan
fonte
Obrigado pela ótima resposta detalhada. Possivelmente técnico demais para o público, mas eu o valorizo ​​bastante.
sholsinger
Command-Shift-R não está funcionando no Chrome atual estável.
Olivier
Parece estar funcionando bem no meu Mac, @olouv. Você espiou a guia Rede da Ferramenta de desenvolvedor? (É verdade que, neste mesmo site, existem alguns recursos para os quais o Chrome ainda emite uma If-Modified-Sincesolicitação, mas esses recursos são solicitados por JavaScript, não pelo analisador de HTML. Além disso, como o cache da própria página está definido para apenas um minuto, talvez pequenas diferenças no tempo de servidor e tempo local pode atrapalhar muito)?
Arjan
CUIDADO , observe um bug de dois anos, mas ainda atual, no Chrome: a atualização forçada do Chrome não ignora o cache .
Arjan
15

A questão é um pouco antiga, mas na versão recente do Chrome

  • Abra o Developer toolsuso F12ou Ctrl+ Shift+I
  • Clique com o botão direito do mouse no botão Atualizar e selecione Esvaziar cache e recarregar por hardware

Isso ignorará o cache e recarregará a página completamente.

O documento diz Ctrl+ F5ou Shift+, F5mas infelizmente até hoje o bug ainda não foi resolvido :-(

Anel Ø
fonte
1
Como um aparte: isso é apenas para Windows. (E eu tenho lido ele só está disponível quando as ferramentas de desenvolvimento estão abertos?)
Arjan
2
Só funciona quando as Ferramentas do desenvolvedor estão abertas, como você diz Arjan.
mgkrebbs
Você também pode segurar a tecla SHIFT enquanto clica no botão de atualização
Bolli
9

Tenho arquivos (imagens e páginas html completas) no servidor que são atualizados e nenhuma combinação de teclas no chrome parece forçar a busca deles.

Confio no modo de navegação anônima do Chrome - CTRL-SHIFT-N - quando preciso forçar a atualização.

Observe que CTRL-R ou CTRL-F5 enquanto dentro de uma janela anônima também não parece funcionar. Você deve fechar e reabrir a janela anônima - daí minha confiança nos atalhos - CTRL-W para fechar, CTRL-SHIFT-N para reabrir.

Daniel Gill
fonte
Você quer dizer "reabrir uma guia anônima", não janela, suponho?
mgol 11/10/12
1
Interessante, para mim, CTRL-SHIFT-N abre uma nova janela, não apenas uma guia - nem sempre é esse o caso?
Daniel Gill
6

Definitivamente, não há uma maneira simples de fazer isso no Chrome como em outros navegadores. A documentação pode dizer que CTRL + F5 ou SHIFT + F5 deve recarregar e ignorar o cache, mas simplesmente não. Tenho uma apresentação de slides em flash que armazena as configurações / configuração em um arquivo .xml e, após atualizar o arquivo XML, o Chrome ainda carrega a versão em cache, a menos que eu limpe o cache. Sempre preciso executar outro navegador ao atualizar a apresentação de slides, para não precisar limpar o cache do Chrome o tempo todo.

jwalker55
fonte
5
O cache do Flash é algo completamente diferente do Chrome.
Joshua
@ Josué A menos que esse cara afirme, ele funciona em outros navegadores, mas não no Chrome. Não esqueça que o Chrome vem com sua própria versão do Flash player.
Camilo Martin
@CamiloMartin ... que também possui seu próprio cache separado. Espere ... você respondeu seriamente a uma postagem com mais de 2 anos? Ugh. Eu mordi a isca.
28712 Joshua
@Joshua Oh, você está certo, eu não percebi :)
Camilo Martin
4

Ctrl - Shift - Excluir permitirá remover o cache da hora anterior. Isso garantirá que da próxima vez que você recarregar um site, ele será atualizado.

J Baron
fonte
4

Definitivamente um bug no Chrome - também são imagens que devem ser alteradas, mas ele usa a imagem antiga, mesmo depois de pressionar repetidamente Ctrl+ F5.

Eu estava tentando alterar meu logotipo do Google Apps, mas a única maneira de mudar no Gmail é se eu usar o modo de navegação anônima ou limpar todo o cache. Ctrl+ F5mantém o logotipo antigo.

Gabe
fonte
3

Eu fiz isso: Clique com o botão direito do mouse no FRAME (que estava fora de sincronia) e SHIFT clicou na opção "Recarregar quadro". O quadro foi atualizado corretamente.

Kirk
fonte
Não funcionou para mim
Coops
3

Para limpar o cache do aplicativo especificado explicitamente, navegando chrome://appcache-internals/no chrome e removendo o cache de sites específicos.

Lorde Loh.
fonte