Configurar la expulsión de caché dirigida con varias granjas de Dispatcher en AEM

La configuración de varias granjas de Dispatcher en AEM puede hacer que las solicitudes de vaciado de caché se enruten incorrectamente al utilizar direcciones URL de localhost. En este artículo se explica cómo configurar un segundo agente de vaciado de Dispatcher con direcciones URL basadas en host para garantizar que el desalojo de caché de GraphQL se dirija al dominio y al docroot correctos.

Descripción description

Entorno

  • Producto: Adobe Experience Manager (AEM) local
  • Versión: 6.5
  • Versión de Apache: 2.2 (pruebas locales)
  • Configuración: Varias granjas y hosts virtuales en la misma instancia de Apache; docroot independiente por dominio

Problema/Síntomas

  • Las solicitudes de vaciado de caché destinadas a dominios específicos se enrutan incorrectamente a la misma granja, lo que provoca que todas las invalidaciones afecten solo a un docroot independientemente de la ruta o el dominio solicitado.
  • Esto ocurre cuando se utilizan direcciones URL de localhost en agentes de vaciado, lo que da como resultado que todas las solicitudes sean gestionadas por la última granja cargada debido a la evaluación del encabezado del host.

Resolución resolution

Para resolver este problema, siga estos pasos:

  1. Asegúrese de que cada granja de Dispatcher esté configurada con patrones de host virtual distintos que coincidan estrechamente con sus dominios deseados.
  2. Configure los hosts virtuales de Apache para que cada ServerName o ServerAlias corresponda de forma exclusiva a cada dominio.
  3. Para entornos locales, agregue entradas en el archivo de hosts que asignen cada dominio a la dirección IP adecuada.
  4. Configure los agentes de vaciado de AEM para que utilicen direcciones URL basadas en host en lugar de direcciones URL de host local.
  5. Si los servidores de publicación y Dispatcher están en equipos diferentes, asegúrese de que la resolución de archivos DNS o de hosts del servidor de publicación apunte esos nombres de host a la dirección IP del servidor de Dispatcher.
  6. Confirme que Apache escucha en el puerto correcto (por ejemplo, el puerto 80) sin conflictos.
  7. Compruebe que las solicitudes de invalidación de caché enviadas mediante agentes de vaciado llegan a sus respectivas granjas y docroot observando el comportamiento de enrutamiento correcto.

Notas:

  • Dispatcher evalúa las granjas basándose estrictamente en el encabezado del host HTTP, no en los segmentos de ruta de URL.
  • El uso de localhost en las direcciones URL del agente de vaciado hace que los encabezados de host de todas las solicitudes se establezcan como localhost, lo que da como resultado un enrutamiento de reserva a la última granja cargada.
  • La configuración descrita funciona tanto si publish como Dispatcher se ejecutan en el mismo servidor o en servidores independientes, siempre que la resolución del nombre de host esté correctamente configurada.
  • No se requieren cambios adicionales si Apache ya está escuchando en el puerto 80 con las asignaciones de host adecuadas.
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f