Deshabilitar el almacenamiento en caché de CDN Fastly en AEM as a Cloud Service

Fastly siempre forma parte de la ruta de entrega de contenido en AEM as a Cloud Service y no se puede eliminar. El almacenamiento en caché inesperado se produce cuando faltan Cache-Control o Surrogate-Control encabezados, se anulan o se aplican de forma incoherente en los recursos. En entornos que utilizan una CDN administrada por el cliente, los encabezados de reenvío incorrectos también pueden afectar al comportamiento de la caché y la gestión de redirecciones.

Para resolver el problema, configure los encabezados de cache-control correctamente, valide la configuración de CDN y compruebe el comportamiento de paso a través de Fastly.

Descripción description

Entorno

  • Adobe Experience Manager as a Cloud Service (AEMaaCS)
  • Traer sus propias implementaciones de CDN (BYOCDN)
  • Configuraciones de Dispatcher
  • Configuración de CDN usando cdn.yaml

Problema/Síntomas

  • El encabezado x-cache muestra rápidamente MISS o SYNTH cuando se espera la omisión de caché.
  • Almacena en caché rápidamente tipos de archivo específicos a pesar de los encabezados de control de caché configurados.
  • Los encabezados Surrogate-Control o Surrogate-Key no aparecen en el borde.
  • El contenido personalizado muestra un comportamiento incoherente porque los fragmentos en caché se reutilizan.
  • Se producen redirecciones inesperadas cuando las solicitudes pasan a través de varias capas de CDN.

Causa

Fastly es un componente integral de la arquitectura de entrega de Adobe Experience Manager as a Cloud Service y permanece en la ruta de solicitud en todo momento. Almacena rápidamente en caché el contenido cuando faltan Cache-Control o Surrogate-Control encabezados, están incompletos, se han anulado o se han aplicado de forma incoherente en los tipos de recursos. Algunos tipos de recursos, como .vtt files, requieren reglas explícitas de control de caché. En implementaciones BYOCDN, los encabezados X-Forwarded-Host o X-Forwarded-Protoincorrectos pueden crear claves de caché diferentes, lo que da como resultado un comportamiento de almacenamiento en caché o redirección inesperado.

Resolución resolution

Siga estos pasos para resolver el problema

  1. Revise los encabezados de respuesta y compruebe que Cache-Control y Surrogate-Control aparecen en las respuestas afectadas.
  2. Confirme que Surrogate-Control contiene valores como max-age=0 o no-store que impiden el almacenamiento en caché de Fastly.
  3. Actualice la configuración del host virtual de Dispatcher para que los encabezados Cache-Control y Surrogate-Control se apliquen de forma coherente en HTML, JSON, recursos y otros tipos de recursos. Agregue reglas explícitas para los tipos de recursos que no hereden los encabezados requeridos.
  4. Compruebe que la CDN administrada por el cliente no anula las directivas de control de caché de Fastly.
  5. Revise los registros de CDN y confirme que la CDN administrada por el cliente realiza el almacenamiento en caché mientras que Fastly funciona en modo de paso a través.
  6. Configure la omisión de caché en cdn.yaml si los controles basados en encabezado no se comportan de la manera esperada. Implemente la configuración actualizada a través de Cloud Manager y compruebe que la implementación se completa correctamente.
  7. Valide el enrutamiento de varias CDN confirmando que el encabezado Hosty el encabezadoX-Forwarded-Protooriginales se reenvíen correctamente a través de la cadena CDN.
  8. Revise las implementaciones de almacenamiento en caché de fragmentos y asegúrese de que los fragmentos personalizados no se almacenen en caché.
  9. Compruebe que las respuestas dinámicas devuelven los encabezados no almacenables en caché adecuados.
  10. Configure Surrogate-Key encabezados cuando los flujos de trabajo de depuración dependan de la invalidación basada en claves.
  11. Habilite Depuración rápida y compruebe que las claves sustitutas aparecen en los encabezados de respuesta.
  12. Valide la configuración final confirmando que Fastly devuelve PASS, que la CDN administrada por el cliente almacena en caché según lo esperado y que las operaciones de depuración de caché se comportan correctamente.

Lectura relacionada

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