Desative o armazenamento em cache do Fastly CDN no AEM as a Cloud Service

O Fastly sempre faz parte do caminho de entrega de conteúdo no AEM as a Cloud Service e não pode ser removido. O armazenamento em cache inesperado ocorre quando Cache-Control ou Surrogate-Control cabeçalhos estão ausentes, substituídos ou aplicados de forma inconsistente entre os recursos. Em ambientes que usam um CDN gerenciado pelo cliente, cabeçalhos de encaminhamento incorretos também podem afetar o comportamento do cache e o tratamento de redirecionamento.

Para resolver o problema, configure os cabeçalhos cache-control corretamente, valide as configurações de CDN e verifique o comportamento de passagem do Fastly.

Descrição description

Ambiente

  • Adobe Experience Manager as a Cloud Service (AEMaaCS)
  • Traga suas próprias implantações de CDN (BYOCDN)
  • Configurações do Dispatcher
  • Configuração da CDN usando cdn.yaml

Problema/Sintomas

  • O cabeçalho Fastly x-cache mostra MISS ou SYNTH quando o bypass de cache é esperado.
  • O Fastly armazena em cache tipos de arquivos específicos apesar dos cabeçalhos de controle de cache configurados.
  • Surrogate-Controlou Surrogate-Key cabeçalhos não aparecem na borda.
  • O conteúdo personalizado exibe um comportamento inconsistente porque os fragmentos em cache são reutilizados.
  • Redirecionamentos inesperados ocorrem quando as solicitações passam por várias camadas de CDN.

Causa

O Fastly é um componente integral da arquitetura de delivery do Adobe Experience Manager as a Cloud Service e permanece no caminho da solicitação o tempo todo. O Fastly armazena em cache o conteúdo quando os cabeçalhos Cache-Control ou Surrogate-Control estão ausentes, incompletos, substituídos ou aplicados de forma inconsistente entre os tipos de recursos. Alguns tipos de ativos, como o .vtt files, exigem regras de controle de cache explícitas. Nas implantações BYOCDN, os cabeçalhos X-Forwarded-Host ou X-Forwarded-Proto incorretos podem criar chaves de cache diferentes, resultando em um comportamento inesperado de armazenamento em cache ou redirecionamento.

Resolução resolution

Siga estas etapas para resolver o problema

  1. Revise os cabeçalhos de resposta e verifique se Cache-Control e Surrogate-Control aparecem nas respostas afetadas.
  2. Confirme se Surrogate-Control contém valores como max-age=0 ou no-store que impedem o armazenamento em cache do Fastly.
  3. Atualize a configuração do host virtual do Dispatcher para que os cabeçalhos Cache-Control e Surrogate-Control sejam aplicados consistentemente em HTML, JSON, ativos e outros tipos de recursos. Adicione regras explícitas para tipos de recursos que não herdam os cabeçalhos necessários.
  4. Verifique se a CDN gerenciada pelo cliente não substitui as diretivas de controle de cache do Fastly.
  5. Revise os logs de CDN e confirme se o CDN gerenciado pelo cliente executa o armazenamento em cache enquanto o Fastly opera no modo de passagem.
  6. Configure o desvio de cache em cdn.yaml se os controles baseados em cabeçalho não atingirem o comportamento esperado. Implante a configuração atualizada por meio do Cloud Manager e verifique se a implantação é concluída com sucesso.
  7. Valide o roteamento de várias CDNs confirmando se o cabeçalho Host e o cabeçalho X-Forwarded-Proto originais estão encaminhados corretamente por toda a cadeia CDN.
  8. Revise as implementações de armazenamento em cache de fragmentos e certifique-se de que os fragmentos personalizados não sejam armazenados em cache.
  9. Verifique se as respostas dinâmicas retornam os cabeçalhos não armazenáveis em cache apropriados.
  10. Configure Surrogate-Key cabeçalhos quando os fluxos de trabalho de limpeza dependerem de invalidação baseada em chave.
  11. Ative a depuração do Fastly e verifique se as chaves substitutas aparecem nos cabeçalhos de resposta.
  12. Valide a configuração final confirmando se o Fastly retorna o PASS, se os caches CDN gerenciados pelo cliente foram esperados e se as operações de limpeza de cache se comportam corretamente.

Leitura relacionada

recommendation-more-help
experience-cloud-kcs-help-kbarticles