Url rewriting 如何防止AEM中内容分层路径的暴露?我正在寻找AEM级别和调度员级别的替代方案
例如,您将如何实现: A.将点击内容翻译为www.mysite.com至www.mysite.com/enUrl rewriting 如何防止AEM中内容分层路径的暴露?我正在寻找AEM级别和调度员级别的替代方案,url-rewriting,aem,Url Rewriting,Aem,例如,您将如何实现: A.将点击内容翻译为www.mysite.com至www.mysite.com/en B将上面的www.mysite.com/en翻译成/content/mysite/en.html看看资源映射: 通过映射,您可以使传入URL(用户在浏览器中看到的)成为一件事,但AEM在处理传入请求时看到的URL则是另一件事 另见: 看看资源映射: 通过映射,您可以使传入URL(用户在浏览器中看到的)成为一件事,但AEM在处理传入请求时看到的URL则是另一件事 另见
B将上面的www.mysite.com/en翻译成/content/mysite/en.html看看资源映射:
dispatcher.any
文件(如果您已将与模块相关的场分隔开,请在我的示例中打开与特定站点相关的场文件)
确保virtualhost允许您的域名在下面的屏幕截图中“*”表示允许所有主机。(如果希望只允许指定特定域名,请指定,而不是*)
通过etc/maps缩短内容路径
可以手动创建etc/maps节点,如下面的屏幕截图所示
(也可以使用第三方开发的插件创建)
将虚拟主机条目添加到调度程序的任何文件或单独的virtualhost文件中。
在我的例子中,我已经在一个单独的文件中添加了它们。并启用了httpd.conf文件中包含的文件。同时启用重写模块,否则virtualhost文件enrty重写将无法工作。
请务必注意突出显示的重写规则和SetHandler配置,它们是正确呈现页面的关键,否则请求可能会在调度程序级别停止,而不会传播到AEM的发布实例
这就是它一旦你做了所有上述配置没有任何错误,你应该能够看到我们的主页域名访问。所有其他页面都应该通过隐藏在etc/maps中配置的内容路径,以简短的URL形式呈现
这里是一个完整的示例
查看本地调度程序设置上的帖子
将本地主机设置为域名(w.r.t操作系统windows7)
将域名映射到本地调度程序
在AEM中设置etc/maps以缩短内容路径(
请记住,根据您的要求,我们可以为etc/maps regex设置多种变体。)
本地主机到域名
更改主机文件中的设置,如屏幕截图所示
添加您喜欢的域名条目,如下所示
例子。
如下图所示,通过域名访问项目。你的页面应该呈现如下。
将域名映射到本地dispatcher
打开dispatcher.any
文件(如果您已将与模块相关的场分隔开,请在我的示例中打开与特定站点相关的场文件)
确保virtualhost允许您的域名在下面的屏幕截图中“*”表示允许所有主机。(如果希望只允许指定特定域名,请指定,而不是*)
通过etc/maps缩短内容路径
可以手动创建etc/maps节点,如下面的屏幕截图所示
(也可以使用第三方开发的插件创建)
将虚拟主机条目添加到调度程序的任何文件或单独的virtualhost文件中。
在我的例子中,我已经在一个单独的文件中添加了它们。并启用了httpd.conf文件中包含的文件。同时启用重写模块,否则virtualhost文件enrty重写将无法工作。
请务必注意突出显示的重写规则和SetHandler配置,它们是正确呈现页面的关键,否则请求可能会在调度程序级别停止,而不会传播到AEM的发布实例
这就是它一旦你做了所有上述配置没有任何错误,你应该能够看到我们的主页域名访问。所有其他页面都应该通过隐藏在etc/maps中配置的内容路径,以简短的URL形式呈现
您的要求是什么?上述内容仅适用于dispatcher组合。我们希望从URL中删除“/content”。在您的etc映射下创建一个节点节点名称:localhost.4503 jcr:primaryType:sling:Mapping sling:internalRedirect String[]/content/,/
,该节点应负责。检查这个帖子你的要求是什么?上述内容仅适用于dispatcher组合。我们希望删除“/内容”