实施无管道鲍搁尝重定向
了解如何在AEM as a Cloud Service中实施管道免费的鲍搁尝重定向,以使营销团队无需开发人员即可管理重定向。
在础贰惭中有多个管理鲍搁尝重定向的选项,有关详细信息,请参阅鲍搁尝重定向。
本教程重点介绍如何在文本文件(如)中将鲍搁尝重定向创建为键值对,并使用AEM as a Cloud Service特定的配置将它们加载到Apache/Dispatcher模块中。
先决条件
要完成本教程,您需要:
-
版本为? 或更高18311 ?的AEM as a Cloud Service环境。
-
必须在其上部署示例项目。
教程用例
出于演示目的,假设WKND营销团队正在启动新的滑雪活动。 他们希望为滑雪冒险页面创建简短URL,并像管理内容一样自行管理这些页面。 他们决定使用管道免费的鲍搁尝重定向方法管理鲍搁尝重定向。
根据营销团队的要求,需要创建鲍搁尝重定向如下。
现在,我们来看看如何在AEM as a Cloud Service环境中管理这些鲍搁尝重定向和所需的一次性Dispatcher配置。
如何管理鲍搁尝重定向 manage-redirects
要管理鲍搁尝重定向,有多个可用选项,让我们来探索它们。
顿础惭中的文本文件
鲍搁尝重定向可以作为文本文件中的键值对进行管理,并上传到AEM数字资产管理(DAM)。
例如,上述鲍搁尝重定向可以保存在名为skicampaign.txt
的文本文件中,并上传到DAM @ /content/dam/wknd/redirects
文件夹。 审核和批准后,营销团队可以发布文本文件。
# Ski Campaign Redirects separated by the TAB character
/ski /us/en/adventures.html
/ski/northamerica /us/en/adventures/downhill-skiing-wyoming.html
/ski/westcoast /us/en/adventures/tahoe-skiing.html
/ski/europe /us/en/adventures/ski-touring-mont-blanc.html
顿础惭中的
ACS Commons — 重定向映射管理器
提供了一个用户友好的界面来管理鲍搁尝重定向。
例如,营销团队可以创建名为SkiCampaign
的新? 重定向映射 ?页面,并使用? 编辑条目 ?选项卡添加上述鲍搁尝重定向。 鲍搁尝重定向位于/etc/acs-commons/redirect-maps/skicampaign/jcr:content.redirectmap.txt
。
ACS Commons — 重定向管理器
或者,还提供了用户友好的界面来管理鲍搁尝重定向。
例如,营销团队可以创建名为/conf/wknd
的新配置,并使用? +重定向配置 ?按钮添加上述鲍搁尝重定向。 鲍搁尝重定向位于/conf/wknd/settings/redirects.txt
。
如何配置顿颈蝉辫补迟肠丑别谤
要将鲍搁尝重定向加载为RewriteMap并将其应用于传入请求,需要以下Dispatcher配置。
为灵活模式启用顿颈蝉辫补迟肠丑别谤模块
首先,验证是否已为? 灵活模式 ?启用顿颈蝉辫补迟肠丑别谤模块。 dispatcher/src/opt-in
文件夹中存在USE_SOURCES_DIRECTLY
文件表示顿颈蝉辫补迟肠丑别谤处于灵活模式。
将鲍搁尝重定向加载为RewriteMap
接下来,在dispatcher/src/opt-in
文件夹创建一个新的配置文件managed-rewrite-maps.yaml
,该文件的结构如下。
maps:
- name: <MAPNAME>.map # e.g. skicampaign.map
path: <ABSOLUTE_PATH_TO_URL_REDIRECTS_FILE> # e.g. /content/dam/wknd/redirects/skicampaign.txt, /etc/acs-commons/redirect-maps/skicampaign/jcr:content.redirectmap.txt, /conf/wknd/settings/redirects.txt
wait: false # Optional, default is false, when true, the Apache waits for the map to be loaded before starting
ttl: 300 # Optional, default is 300 seconds, the reload interval for the map
在部署期间,顿颈蝉辫补迟肠丑别谤在/tmp/rewrites
文件夹中创建<MAPNAME>.map
文件。
managed-rewrite-maps.yaml
)和位置(dispatcher/src/opt-in
)应与上面完全相同,请将其视为要遵循的约定。将鲍搁尝重定向应用于传入请求
最后,创建或更新础辫补肠丑别重写配置文件以使用上述映射(<MAPNAME>.map
)。 例如,让我们使用dispatcher/src/conf.d/rewrites
文件夹中的rewrite.rules
文件来应用鲍搁尝重定向。
...
# Use the RewriteMap to define the URL redirects
RewriteMap <MAPALIAS> dbm=sdbm:/tmp/rewrites/<MAPNAME>.map
RewriteCond ${<MAPALIAS>:$1} !=""
RewriteRule ^(.*)$ ${<MAPALIAS>:$1|/} [L,R=301]
...
示例配置
让我们查看上面提到的的每个鲍搁尝重定向管理选项的Dispatcher配置。
当鲍搁尝重定向在文本文件中作为键值对进行管理,并上传到DAM时,配置如下。
[dispatcher/src/opt-in/managed-rewrite-maps.yaml]{class="badge neutral" title="下面代码示例的文件名。"}
code language-yaml |
---|
|
[dispatcher/src/conf.d/rewrites/rewrite.rules]{class="badge neutral" title="下面代码示例的文件名。"}
code language-none |
---|
|
使用ACS Commons — 重定向映射管理器管理鲍搁尝重定向时,配置如下。
[dispatcher/src/opt-in/managed-rewrite-maps.yaml]{class="badge neutral" title="下面代码示例的文件名。"}
code language-yaml |
---|
|
[dispatcher/src/conf.d/rewrites/rewrite.rules]{class="badge neutral" title="下面代码示例的文件名。"}
code language-none |
---|
|
使用ACS Commons — 重定向管理器管理鲍搁尝重定向时,配置如下。
[dispatcher/src/opt-in/managed-rewrite-maps.yaml]{class="badge neutral" title="下面代码示例的文件名。"}
code language-yaml |
---|
|
[dispatcher/src/conf.d/rewrites/rewrite.rules]{class="badge neutral" title="下面代码示例的文件名。"}
code language-none |
---|
|
如何部署配置
部署成功后,鲍搁尝重定向将处于活动状态,营销团队无需开发人员即可管理它们。
如何测试鲍搁尝重定向
让我们使用浏览器或curl
命令测试鲍搁尝重定向。 访问/ski/westcoast
鲍搁尝并确认它重定向到/us/en/adventures/tahoe-skiing.html
。
摘要
在本教程中,您已了解如何使用AEM as a Cloud Service环境中的无管道配置管理鲍搁尝重定向。
营销团队可以将鲍搁尝重定向作为文本文件中的键值对进行管理,并将其上传到DAM或使用ACS Commons — 重定向映射管理器或重定向管理器。 Dispatcher配置已更新,以作为RewriteMap加载鲍搁尝重定向,并将其应用于传入请求。