Tenemos nuestro sitio creado con AEM 6.5. La estructura del contenido es algo como esto /content/site/en .
El problema al que nos enfrentamos es que la estructura del contenido es visible en la búsqueda de Google. Por ejemplo, si buscamos denim, los resultados que obtenemos actualmente-
www.site.com/content/site/en/denim.htmlEl resultado esperado-
www.site.com/denim.html¿Cuáles podrían ser las diferentes opciones para ocultar la estructura de los resultados? ¡Gracias!
Está buscando acortar URL. Este artículo habla exactamente de cómo hacer para acortar URL.
Acortamiento de URL : cuando el autor del contenido selecciona un enlace interno mediante el selector de ruta, queremos que el href del enlace de anclaje respectivo se acorte y se añada .html. La práctica más común para hacer esto es usar LinkRewriter. This , this , this son diferentes ejemplos para la misma implementación. Esto se encargará de cambiar de href=/content/site/en/denim.html a href=/en/denim.html. Esto es enlaces salientes.
Resolución de recursos para enlaces entrantes : a continuación, también necesitamos que suceda lo contrario. Cuando alguien accede a href=www.site.com/en/denim.html, queremos que AEM resuelva esto en la página /content/site/en/denim. Para hacer esto, hay (en general) 2 formas: 1) Usando las reglas de reescritura de apache, 2) Mapeo de recursos de Sling. Otra técnica posible podría ser usar reglas de CDN Edge, pero no he visto ningún lugar para esto.
Una solicitud http habitual a AEM toma esta ruta: navegador -> CDN -> Apache -> publicador de AEM. En esta ruta, podemos convertir /denim.html a /content/site/en/denim en Apache o AEM
Reglas de reescritura de Apache : cuando la solicitud llega a Apache, usamos el módulo mod_rewrite para reescribir el tráfico entrante en la ruta resoluble de AEM. Por ejemplo, una regla simple RewriteRule ^/en/(.*) /content/site/en/$1 [PT] cambiará /en/denim./html a /content/site/en/denim.html. Consulte aquí .
Por lo tanto, la URL ya está resuelta en la ruta comprensible de AEM. El publicador de AEM puede resolver fácilmente esta ruta de recursos y procesamiento.
Mapeo de honda : la segunda técnica es mantener apache como una máquina de caché tonta, enviar el tráfico directamente al editor y pedirle al editor que resuelva.
En /etc/maps, implementamos internalRedirectRules. AEM antes de comenzar a procesar la solicitud, buscará la asignación de sling, resolverá la solicitud entrante en una ruta de recursos válida y luego comenzará a procesar el negocio.
Ambas técnicas tienen pros y contras. Pero la reescritura de Apache es preferible porque AEM ya está demasiado ocupado con otros trabajos de renderizado.
Resumen: