URL重定向
URL重定向是网站操作中一个常见的方面。 架构师和管理员需要找到最佳解决方案,了解如何以及在何处管理URL重定向,从而提供灵活性和快速的重定向部署时间。
确保您熟悉AEM (6.x),即AEM Classic和AEM as a Cloud Service基础架构。 主要区别包括:
- AEM as a Cloud Service具有内置CDN,但是,客户可以在AEM-managed CDN之前提供CDN (BYOCDN)。
- AEM 6.x(无论是内部部署还是AdobeManaged Services (AMS))均不包含AEM管理的CDN,并且客户必须自带。
其他AEM服务(AEM Author/Publish和Dispatcher)在AEM 6.x和AEM as a Cloud Service之间的概念其他方面类似。
AEM URL重定向解决方案如下所示:
解决方案选项
以下是从离网站访客的浏览器较近的顺序来看的一些解决方案选项。
在Edge,通过AEM-managed CDN at-edge-via-aem-managed-cdn
此选项仅适用于AEM as a Cloud Service客户。
AEM-managed CDN在Edge级别提供了重定向解决方案,从而减少了到原点的往返次数。 客户端重定向功能允许您在AEM项目代码中配置重定向规则,并使用配置管道进行部署。 CDN配置文件(cdn.yaml
)大小不应超过100KB。
在Edge或CDN级别管理重定向具有性能优势。
在Edge,通过自带CDN
某些CDN服务提供了Edge级别的重定向解决方案,因此减少了到原点的往返次数。 请参阅Akamai Edge重定向器、AWS CloudFront函数。 有关Edge级别重定向功能,请咨询您的CDN服务提供商。
在Edge或CDN级别管理重定向具有性能优势,但是它们不是作为AEM的一部分进行管理,而是作为离散项目进行管理。 一个明确定义的流程来管理和部署重定向规则对于避免问题至关重要。
Apache mod_rewrite
模块
通用解决方案使用Apache模块mod_rewrite。 AEM项目原型为AEM 6.x和AEM as a Cloud Service项目提供了Dispatcher项目结构。 在conf.d/rewrites
文件夹中定义了默认(不可变)和自定义重写规则,并且为通过conf.d/dispatcher_vhost.conf
文件侦听端口80
的virtualhosts
打开重写引擎。 AEM WKND Sites项目中提供了示例实现。
在AEM as a Cloud Service中,这些重定向规则作为AEM代码的一部分进行管理,并通过Cloud Manager Web层配置管道或全栈管道进行部署。 因此,您的AEM项目特定流程将用于管理、部署和跟踪重定向规则。
大多数CDN服务会根据其Cache-Control
或Expires
标头缓存HTTP 301和302重定向。 它有助于避免在Apache/Dispatcher上发起初始重定向后出现往返情况。
ACS AEM Commons
ACS AEM Commons中有两项功能可用于管理URL重定向。 请注意,ACS AEM Commons是一个社区运营的开源项目,不受Adobe支持。
重定向映射管理器
重定向映射管理器可帮助AEM管理员轻松维护和发布Apache RewriteMap文件,而无需直接访问Apache Web服务器或要求重新启动Apache Web服务器。 此功能允许用户从AEM中的控制台创建、更新和删除重定向规则,而无需开发团队或AEM部署的帮助。 重定向映射管理器同时具有 AEM as a Cloud Service(请参阅无管道URL重定向策略)和 AEM 6.x 兼容。
重定向管理器
重定向管理器允许AEM中的用户轻松地维护和发布来自AEM的重定向。 该实现基于Java™ servlet过滤器,因此典型的JVM资源消耗。 此功能还可消除对AEM开发团队和AEM部署的依赖性。 重定向管理器与 AEM as a Cloud Service 和 AEM 6.x 兼容。 默认情况下,初始重定向请求必须命中AEM Publish服务来生成301/302(大多数) CDN的缓存301/302,这样后续请求才能在Edge/CDN上重定向。
Redirect
页面属性
高级选项卡中的现成(OOTB) Redirect
页面属性允许内容作者定义当前页面的重定向位置。 此解决方案最适合每页面重定向方案,并且没有用于查看和管理页面重定向的中心位置。
哪个解决方案适合实施
下面是确定正确解决方案的一些标准。 此外,贵组织的IT和营销流程应该有助于选择正确的解决方案。
- 使营销团队或超级用户能够在没有AEM开发团队和AEM部署的情况下管理重定向规则。
- 管理、验证、跟踪和恢复更改或风险缓解的过程。
- 通过CDN服务 解决方案为 的Edge提供 主题专业知识。