URL mnemónicas de Dispatcher | AEM

Este documento le ayudará a comprender cómo gestiona Adobe Experience Manager las URL personalizadas y las técnicas adicionales, como el uso de reglas de reescritura para acercar el contenido al límite de la entrega.

Descripción description

Entorno

Adobe Experience Manager

Problemas/Síntomas

¿Cómo trata AEM las direcciones URL mnemónicas? ¿Existen técnicas adicionales para asignar contenido más cerca del borde del envío?

¿Qué son las URL mnemónicas?

Cuando tiene contenido que se aloja en una estructura de carpetas lógica, no siempre vive en una dirección URL de referencia fácil. Las URL mnemónicas son como accesos directos. Direcciones URL únicas o más cortas que hacen referencia al lugar donde se encuentra el contenido real.

Un ejemplo: /aboutus apuntó a /content/we-retail/us/en/about-us.html

Los autores de AEM tienen la opción de establecer propiedades de URL mnemónicas en un fragmento de contenido en AEM y publicarlo.

Para que funcione, tendrá que ajustar los filtros de Dispatcher para permitir el elemento mnemónico. Esto no es razonable con el ajuste de los archivos de configuración de Dispatcher a la velocidad que los autores necesitarían para configurar estas entradas de página mnemónicas.

Por este motivo, el módulo de Dispatcher tiene una función para permitir automáticamente cualquier elemento enumerado como mnemónico en el árbol de contenido.

Resolución resolution

¿Cómo funciona?

Creación de URL mnemónicas

El autor visita una página en AEM y las propiedades de la página, y agrega las entradas del complemento en la sección de la URL mnemónica.

Una vez que guardan los cambios y activan la página, el elemento mnemónico se asigna a esta página.

IU táctil:

Buscador de contenido clásico:

Nota: Tenga en cuenta que esto es muy vulnerable a problemas con el área de nombres. Las entradas mnemónicas son globales para todas las páginas. Esta es solo una de las deficiencias para las que debe planificar las soluciones. Explicaremos algunas de ellas más adelante.

Asignación/resolución de recursos:

Cada entrada mnemónica es una entrada de mapa sling para una redirección interna. Estos mapas están visibles en la consola Felix de instancias de AEM (/system/console/jcrresolver)

Esta es una captura de pantalla de una entrada de mapa creada por una entrada mnemónica:

En el ejemplo anterior, cuando solicitamos a la instancia de AEM que visite /aboutus, se resolverá en /content/we-retail/us/en/about-us.html

Filtros de permiso automático de Dispatcher:

Dispatcher en un estado seguro filtra las solicitudes en la ruta / a través de Dispatcher porque esa es la raíz del árbol JCR.

Es importante asegurarse de que los editores solo permitan contenido de /content y otras rutas seguras, etc. y no rutas como /system, etc.

Aquí están las URL mnemónicas activas en la carpeta base de /. Entonces, ¿cómo les permitimos llegar a los editores mientras se mantienen seguros?

El Dispatcher simple tiene un mecanismo de autorización de filtro automático y debe instalar un paquete de AEM y luego configurar el Dispatcher para que se oriente a esa página de paquetes. Visite aquí para el paquete de AEM.

Dispatcher tiene una sección de configuración en su archivo de granja de servidores:

/vanity_urls {      /url    "/libs/granite/dispatcher/content/vanityUrls.html"
  /file   "/tmp/vanity_urls"      /delay  300 }

Esta configuración indica a Dispatcher que recupere esta URL de su instancia de AEM que se abre cada 300 segundos para recuperar la lista de los elementos que queremos permitir.

Almacena su caché de la respuesta en el argumento /file; en este ejemplo, /tmp/vanity_urls.

Por lo tanto, si visita la instancia de AEM en la URL, verá lo que arroja:

Es una lista muy sencilla.

Reescribir reglas como reglas mnemónicas

¿Por qué mencionamos el uso de reglas de reescritura en lugar del mecanismo predeterminado integrado en AEM como se describe más arriba?

Se explican sencillamente los problemas de área de nombres, rendimiento y lógica de nivel superior que se pueden gestionar mejor.

Veamos un ejemplo de la entrada mnemónica /aboutus de su contenido /content/we-retail/us/en/about-us.html mediante el módulo mod_rewrite de Apache para lograr esto.

RewriteRule /aboutus /content/we-retail/us/en/about-us.html PT,L,NC

Esta regla buscará el elemento mnemónico /aboutus y recuperará la ruta completa del procesador con el indicador PT (Pasar).

También dejará de procesar todas las demás reglas del indicador L (Última), lo que significa que no tendrá que atravesar una enorme lista de reglas como la resolución JCR.

Además de no tener que representar la solicitud y esperar a que el editor de AEM responda a estos dos elementos de este método, se hace mucho más eficaz.

A continuación, la cereza del pastel aquí es la marca NC (sin distinción de mayúsculas y minúsculas), lo que significa que si cambia la dirección URL por /Aboutus en lugar de /aboutus, seguirá funcionando y se recuperará la página correcta.

Para crear una regla de reescritura, debe crear un archivo de configuración en Dispatcher (ejemplo: /etc/httpd/conf.d/rewrites/examplevanity_rewrite.rules) e incluirlo en el archivo .vhost que administra el dominio que necesita aplicar estas URL de vanidad.

Este es un ejemplo de fragmento de código de la inclusión dentro de:

/etc/httpd/conf.d/enabled_vhosts/we-retail.vhost
 VirtualHost *:80    ServerName    weretail.com    ServerAlias

www.weretail.com        ........ SNIP ........     IfModule mod_rewrite.c

   ReWriteEngine    on       LogLevel warn rewrite:info

Include /etc/httpd/conf.d/rewrites/examplevanity_rewrite.rules      / IfModule
   ........ SNIP ......../VirtualHost

¿Qué método y dónde utilizarlo?

R. El uso de AEM para controlar las entradas personales tiene las siguientes ventajas:

  • Los autores pueden crearlos sobre la marcha
  • Se alojan con el contenido y se pueden empaquetar con este

B. Usar mod_rewrite para controlar las entradas personales ofrece las siguientes ventajas:

  • Resolución de contenido más rápida
  • Más cerca del límite de las solicitudes de contenido de usuario final
  • Más extensibilidad y opciones para controlar cómo se asigna el contenido a otras condiciones
  • Puede distinguir entre mayúsculas y minúsculas

C. Utilice ambos métodos, pero aquí están los consejos y criterios que debe utilizar cuando:

  • Si el elemento mnemónico es temporal y tiene un tráfico planificado bajo, use la función integrada de AEM
  • Si el elemento mnemónico es un extremo básico que no cambia con frecuencia y tiene uso frecuente, utilice una regla mod_rewrite.
  • Si el área de nombres mnemónica (por ejemplo: /aboutus) debe reutilizarse para muchas marcas en la misma instancia de AEM, utilice reglas de reescritura.

Nota: Si desea usar la característica mnemónica de AEM y evitar el área de nombres, puede crear una convención de nomenclatura. Usando URL personales anidadas como /brand1/aboutus, brand2/aboutus, brand3/aboutus

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