Guias práticos

Configurar o cache HTTP sem expor dados privados

O cache ajuda apenas quando a resposta reutilizada é apropriada para o visitante e o horário de acesso. Uma única política para cada recurso pode ocultar uma atualização ou expor uma resposta personalizada.

Veja o método

Cache: decidir por resposta

Classifique as respostas antes de escolher uma vida inteira

Páginas públicas de inventário, ativos estáticos, respostas da API, contas e confirmações. Registre se cada mudança com o usuário, idioma ou parâmetro. Identifique os caches do navegador, do intermediário e do CDN. Uma página de conta não deve herdar a política de uma fotografia pública simplesmente porque essa política é fácil de aplicar.

Distinguir o frescor da permissão para armazenar uma resposta. O MDN explica que o No-Cache requer revalidação, enquanto No-Store não solicita armazenamento. Private restringe o armazenamento a caches privados. Um cookie sozinho não torna automaticamente uma resposta privada.

Planeje como uma atualização se torna visível

Escreva uma regra de atualização para cada família. Para um arquivo com versão, confirme se a nova página solicita o novo URL. Para uma página pública com um endereço estável, descreva a revalidação ou a limpeza. Uma longa vida útil sem um procedimento de substituição apenas move o problema para a próxima mudança de conteúdo.

Escolha um exemplo prático: uma correção de preços, horário de funcionamento ou um documento substituído. Registre quando a origem muda e inspecione uma sessão que já tenha visitado a página. Um novo navegador por si só não cobre um visitante que retorna, mantendo uma resposta anterior.

Teste identidades e estados diferentes

Em um ambiente de teste, compare uma visita anônima, duas contas distintas, logout e navegação de volta. Inspecione o conteúdo exibido e os cabeçalhos recebidos em vez de apenas a configuração de hospedagem. Use registros de teste sintéticos em vez de documentos pessoais reais.

Inclua linguagem, dispositivo, filtro e estados de erro relevantes. Mantenha o URL, o estado da sessão, a resposta esperada e o resultado de cada teste. Quando a personalização passa por um cache compartilhado, peça ao proprietário da infraestrutura que revise as chaves e exclusões do cache.

Mantenha um procedimento de recuperação

Documente quem pode limpar o cache, verificar seu efeito e restaurar uma configuração anterior. Um amplo expurgo pode reduzir temporariamente os benefícios do armazenamento em cache; portanto, prepare uma verificação das páginas essenciais após a operação.

Revise a política quando as contas do cliente, o comércio, um idioma ou um CDN são introduzidos. Uma entrega útil é uma matriz Response–Policy–Test–Owner. Uma pontuação de desempenho por si só não estabelece frescor nem isolamento entre os usuários.

Documentação principal: MDN — Cache HTTP.

Documentos de referência

Conteúdo atualizado em 1º de outubro de 2026

Matriz de validação funcional para se adaptar ao projeto

Esses controles propostos usam casos fictícios. Decida qual comportamento é esperado com a equipe, anote o resultado e atribua discrepâncias não resolvidas antes da publicação.

Casos de teste, resultados esperados e evidências úteis
CasoResultado esperadoProva para guardar
Página pública inalteradaA política anunciada e a resposta condicional permanecem consistentes em todas as solicitações.Cabeçalhos, validador e status de ambas as solicitações, com o estado do navegador registrado.
Conteúdo público alteradoA versão corrigida chega dentro das condições definidas de frescura.Conteúdo antigo e novo, pedido de tempo e cabeçalhos recebidos.
Duas contas de testeUma resposta personalizada para a primeira conta nunca é servida para a segunda.Solicitações isoladas e conteúdo recebido por cada conta sintética.
Saia e volteO comportamento da tela sensível corresponde ao requisito de confidencialidade documentado.Sequência completa do navegador e limitações explicitamente registradas.

Perguntas frequentes

São equivalentes sem cache e sem loja?

Não. A primeira requer validação antes da reutilização; O segundo solicita que a resposta não seja armazenada. Escolha de acordo com o conteúdo e caches envolvidos e teste as jornadas afetadas.

Todos os recursos devem compartilhar um tempo de vida de cache?

Uma única vida ignora as diferenças entre ativos públicos com versão, páginas editoriais, preços e respostas personalizadas. Classifique as respostas, defina seu processo de atualização e teste os estados conectados antes de escolher o tempo de vida.