Cache de borda (edge cache) para conteúdo dinâmico: o guia sem enrolação
Se você chegou até aqui, provavelmente já ouviu falar que "cache deixa o site mais rápido" — e é verdade! Mas quando o assunto é conteúdo dinâmico (carrinho de compras, área logada, painel do cliente, resultados de busca), a coisa fica mais delicada. Cachear a coisa errada pode fazer um cliente ver o carrinho de outro cliente, ou uma página "congelada" no tempo. Vamos com calma que eu te explico tudo, passo a passo. 🧘
O que é cache de borda, afinal?
Pense na "borda" (edge) como um posto avançado bem mais perto do visitante do seu site do que o servidor de hospedagem em si. Uma rede de distribuição de conteúdo (CDN) guarda cópias de partes do seu site nesses postos avançados. Quando alguém visita, a resposta sai desse posto próximo — muito mais rápido do que buscar tudo lá na origem, toda vez.
O problema é que nem tudo pode ser guardado (cacheado) do mesmo jeito. Uma imagem do seu logo é sempre a mesma para todo mundo — pode ficar em cache por dias. Já o preço no carrinho de um cliente específico, ou o "Olá, Maria!" no topo da página, é único daquela pessoa — não pode ser servido pra outra visita.
Dica da Sensei: a regra de ouro é: cache tudo que é igual pra todo mundo, e nunca cache o que é pessoal ou muda a cada clique.
Passo 1 — Separe o que é "estático" do que é "dinâmico"
Antes de mexer em qualquer regra, faça uma listinha mental (ou no papel mesmo) do seu site:
- Conteúdo estático: imagens, CSS, JavaScript, PDFs, vídeos, páginas institucionais que quase nunca mudam (Sobre, Contato).
- Conteúdo dinâmico "compartilhado": uma listagem de produtos, um blog, resultados de uma busca genérica — muda, mas é igual pra todo mundo que faz a mesma consulta.
- Conteúdo dinâmico "pessoal": carrinho de compras, área logada, painel do usuário, formulários com token de segurança (CSRF), qualquer coisa que dependa de quem está olhando.
Essa separação é a base de tudo. Sem ela, qualquer regra de cache vira um tiro no escuro.
Passo 2 — Defina regras por caminho de URL (path rules)
A forma mais simples e segura de configurar cache de borda para conteúdo dinâmico é criar regras específicas por caminho (path), em vez de uma regra única para o site inteiro. Por exemplo:
- Ative cache agressivo para pastas de arquivos estáticos, como
/assets/,/imagens/,/css/,/js/— tempo de vida (TTL) longo, de horas a dias. - Ative cache curto ou moderado para páginas de conteúdo dinâmico compartilhado, como
/blog/ou/produtos/— TTL de minutos, o suficiente para aliviar o servidor sem mostrar dado velho demais. - Desative completamente o cache (bypass) para caminhos pessoais, como
/carrinho/,/minha-conta/,/checkout/,/login/,/admin/e qualquer rota de API que devolva dado do usuário logado.
Passo 3 — Use cookies e cabeçalhos como "gatilho" de exceção
Nem sempre dá pra separar tudo só pelo caminho da URL — às vezes a mesma página muda de comportamento dependendo se o visitante está logado ou não. Nesses casos, a maioria das ferramentas de cache de borda permite criar uma regra assim:
- Se existir um cookie de sessão (tipo
PHPSESSID,session_id, ou o cookie de login do seu sistema) → não cachear essa requisição, ou cachear por um tempo muito curto. - Se não existir cookie de sessão (visitante anônimo, primeira visita) → pode cachear normalmente, já que a página provavelmente é igual para todo mundo nessa condição.
Dica da Sensei: essa técnica se chama "vary by cookie" e é uma das formas mais seguras de misturar cache com áreas logadas sem vazar dado de um cliente pra outro.
Passo 4 — Cuidado com parâmetros de URL (query strings)
Se o seu site usa parâmetros na URL para filtros, buscas ou paginação (por exemplo ?pagina=2 ou ?cor=azul), pense bem em como o cache trata isso:
- Se cada combinação de parâmetro gera uma página realmente diferente e você quer cachear cada uma, mantenha os parâmetros relevantes na chave de cache.
- Se os parâmetros são só de rastreamento (como
?utm_source=...de campanhas de marketing) e não mudam o conteúdo da página, ignore esses parâmetros na hora de decidir o que é cache — senão você vai gerar centenas de cópias inúteis da mesma página e a taxa de acerto do cache despenca.
Passo 5 — Sempre tenha um jeito de "limpar" o cache (purge)
Toda regra de cache de conteúdo dinâmico precisa vir acompanhada de um plano B: e se você publicar uma atualização e o cache antigo continuar aparecendo? Por isso:
- Prefira TTLs curtos (minutos) para conteúdo que muda com frequência, em vez de longos, mesmo que isso signifique menos "economia" de cache.
- Se a sua ferramenta de CDN oferecer purge manual ou automático ao publicar conteúdo, use-o sempre que fizer uma atualização importante.
Passo 6 — Teste antes de confiar
Antes de sair aplicando regras de cache de borda em produção, faça um teste simples:
- Abra a página em uma aba anônima (sem estar logado) e veja se ela carrega normalmente.
- Faça login em outra aba e confira se as informações pessoais (nome, carrinho, pedidos) aparecem corretas — e não as de outro usuário.
- Atualize um conteúdo (por exemplo, um preço ou um texto) e confira quanto tempo leva até a mudança aparecer para um visitante novo.
Dica da Sensei: se em algum momento você ver dado de um usuário aparecendo pra outro, desative a regra de cache daquele trecho imediatamente e revise — segurança e privacidade vêm sempre antes de performance.
Precisa de ajuda para configurar no seu plano?
As opções específicas de cache de borda e CDN disponíveis podem variar conforme o seu plano e a configuração do seu domínio. Para saber exatamente quais recursos estão liberados na sua hospedagem e como habilitá-los, consulte o painel do cliente em painel.gehost.com.br ou abra um chamado com o nosso suporte — assim a equipe te orienta com precisão, olhando o seu caso específico.
E lembre-se: cache é uma ferramenta poderosa, mas conteúdo dinâmico pede carinho e regras bem pensadas. Com calma e testando cada passo, seu site fica rápido e seguro. 🌱