Problema

Al activar contenido en su sitio AEM, los cambios se muestran en las instancias de publicación, pero no en el sitio web real.

Causa

Puede haber muchos motivos para ello, ya que varía dependiendo de la arquitectura.

Los motivos pueden ser:

  • Si está utilizando una CDN
    • Ajustes de TTL incorrectos
    • Encabezados relacionados con la caché incorrectos o ausentes (Cache-Control, Pragma Expires)
  • El distribuidor o servidor web da error o está mal configurado.

Resolución

El primer paso para depurar un problema de este tipo es aislar el problema. Ya sabemos que las instancias de publicación de AEM se están actualizando con las activaciones. Por lo tanto, el problema debe residir en la pila web ascendente que incluye CDN y la caché del servidor web o distribuidor.

I. Comprobación de los servidores web o distribuidores para ver si el contenido es obsoleto

 

  1. Si el contenido de los distribuidores no está obsoleto, significa que el problema está o con las configuraciones CDN TTL o con los encabezados que el distribuidor o AEM están enviando.  Siga la sección “II. Problemas de CDN que aparece a continuación como guía.

  2. Si los distribuidores tienen contenido obsoleto, significa que algo está mal configurado o que funciona mal en uno de esos distribuidores.  Siga la sección “IV. Problemas de caché del distribuidor como guía.

II. Problemas de CDN

Si el contenido de CDN es obsoleto, puede intentar lo siguiente:

  1. Inicie sesión en la interfaz de administración de CDN y compruebe las configuraciones de TTL. Si los TTL se configuran en los ajustes de CDN, asegúrese de que no sean demasiado altos.

  2. Acceda al contenido directamente a través del distribuidor y compruebe la existencia de encabezados HTTP relacionados con la caché, como Cache-Control: max-age, Expires y Pragma. Por ejemplo, http://dispatcher-host1/content/geometrixx/en.html

  3. Pruebe a ignorar el Dispatcher mediante la adición de una cadena de consulta en la URL, por ejemplo: http://dispatcher-host1/content/geometrixx/en.html?bypasscache=1. Compruebe también los encabezados relacionados con la caché para esta respuesta.  Los encabezados pueden diferir entre los que se devuelven de una respuesta en caché. Tenga en cuenta que después de vaciar la caché de Dispatcher, la primera respuesta HTTP sería la misma que cuando se le ignora. Por este motivo, algunos servidores Edge CDN estarían recibiendo la respuesta ignorada y otros recibirían la respuesta en caché del distribuidor.

Nota:

Si se omiten los encabezados relacionados con la caché en la respuesta HTTP, algunas CDN, como Amazon Cloudfront, almacenarán la respuesta en caché de forma indefinida (suponiendo que no se hayan configurado los TTL). 

III. Agente de vaciado bloqueado o no configurado

Si ha determinado que el problema no está a nivel de CDN, el siguiente paso es comprobar las configuraciones del agente de vaciado de AEM.

Asegúrese de que ha configurado los agentes de vaciado y que están habilitados

Si las tareas de vaciado de la caché se están procesando o atascando en la cola, compruebe las colas del agente de vaciado.

  1. 1. El agente de vaciado está en estado bloqueado
    Si la página del agente de vaciado de Dispatcher muestra estado bloqueado, es posible que haya un problema de conectividad de red entre AEM y los servidores del distribuidor.  Asegúrese de que todas las instancias de AEM con agentes de vaciado configurados puedan llegar a los servidores del distribuidor. Modifique las reglas del firewall si es necesario para permitir la conectividad entre los servidores.

  2. 2. El agente de vaciado está en estado activo con muchas tareas en cola
    Si el agente muestra estado activo pero hay muchas tareas, podría haber lo siguiente:
    a. Un error durante el vaciado
    b. El servidor web está respondiendo muy lentamente a las solicitudes de vaciado
    c. Un problema con el procesamiento de tareas de AEM

  3. 3. El agente de vaciado está en estado activo sin tareas en la cola
    Si el agente muestra estado activo, pero no hay tareas en la cola, el servidor web devuelve una respuesta de 200 para las solicitudes de vaciado, pero no realiza el vaciado.

IV. Problemas con la caché del distribuidor

  1. Pruebe una solicitud de descarga manual del distribuidor utilizando cURL

    Pruebe una solicitud de descarga de Dispatcher utilizando cURL. Si obtiene una respuesta distinta a 200 con el cuerpo de respuesta “OK”, el módulo de Dispatcher no está procesando el vaciado del distribuidor. Para depurarlo, siga los siguientes pasos. 

    curl -v -H "CQ-Action: Activate" \ 
         -H "CQ-Handle: /content/bar" \ 
         -H "Content-Length: 0" \
         -H "Content-Type: application/octet-stream" \ 
         http://dispatcher-server-hostname:port/dispatcher/invalidate.cache
  2. Comprobación de la configuración de dispatcher.any

    Comprobación de los clientes permitidos

    Compruebe la configuración de los clientes permitidos de sus granjas de distribuidores configuradas en las configuraciones dispatcher.any. Asegúrese de que se enumeran las direcciones IP de todas las instancias de AEM que se espera que emitan solicitudes de vaciado. 

  3. Comprobación de la configuración del servidor web

Microsoft IIS:

A. Compruebe la solicitud de filtrado.

  1. Inicie sesión como administrador en el servidor IIS a través de RDP

  2. Abra el Administrador de servidores => Roles => Administrador de IIS

  3. En el Administrador de IIS, vaya hasta su sitio habilitado para AEM Dispatcher

  4. Abra Solicitar filtrado

  5. Asegúrese de que las configuraciones de filtrado no bloqueen las solicitudes GET y POST para /dispatcher/invalidate.cache

Consulte la documentación de Microsoft para obtener más información sobre cómo acceder y modificar estas configuraciones.

B. Comprobación de las reglas de reescritura de IIS

  1. Inicie sesión en el servidor IIS como administrador a través de RDP

  2. Abra el Administrador de servidores => Roles => Administrador de IIS

  3. En el Administrador de IIS, vaya hasta su sitio habilitado para AEM Dispatcher

  4. Abra URL Rewrite

  5. Revise las reglas para determinar si alguna podría bloquear o romper las solicitudes GET o POST para /dispatcher/invalidate.cache

Consulte la documentación de Microsoft para obtener más información sobre cómo acceder y modificar estas configuraciones.

Servidor web Apache:

A. Compruebe las configuraciones de reglas de reescritura.

Revise y reescriba reglas en sus configuraciones HTTPD para validar si alguna de ellas podría bloquear o romper las solicitudes GET o POST a /dispatcher/invalidate.cache

Esta obra está autorizada con arreglo a la licencia de Reconocimiento-NoComercial-CompartirIgual 3.0 Unported de Creative Commons.  Los términos de Creative Commons no cubren las publicaciones en Twitter™ y Facebook.

Avisos legales   |   Política de privacidad en línea