我正在使用AEM。我已经使用重定向配置了一些个性化网址。例如:
datetime.date(2018, 7, 23)
同样在Web服务器中,我已经进行了配置以剥离HTML扩展名,因此我的Web服务器通过另一个重定向删除了html扩展名。现在,当我点击虚荣网址时,我将进行2次重定向
/coaties > /content/geometrixx-outdoors/women/coats/winter-coat.html
我想避免2次重定向,也不想向最终用户显示HTML扩展名。
/coaties > /content/geometrixx-outdoors/women/coats/winter-coat.html [1st redirect]
/content/geometrixx-outdoors/women/coats/winter-coat.html >
/content/geometrixx-outdoors/women/coats/winter-coat [2nd redirect]
我在吊索上度过了一段时间,没有运气。我所了解的是,由于Sling将为所有不带扩展名的URL返回403,因此它总是返回带扩展名的URL。在调度程序或Web服务器端可以做到这一点吗?
答案 0 :(得分:0)
如果我理解,您想从网站的所有页面中删除.html扩展名。
@awd的解决方案将确保您页面中的所有href都将转换为不带扩展名的uris。
如果您根本不想在站点中进行任何扩展,则应通过在/ etc / maps下创建map来使用内部重定向,您可以在此处找到官方文档:http://sling.apache.org/documentation/the-sling-engine/mappings-for-resource-resolution.html
答案 1 :(得分:0)
感谢大家的贡献。
我找到了解决该问题的方法
我将对网络服务器进行以下配置 对于apache,请访问httpd.conf
Header edit Location (.*).html$ $1
对于obj.conf中的iPlanet
<If $srvhdrs{'Location'} =~ "^(.*).html$">
Output fn="set-variable" $srvhdrs{'Location'}="$1"
</If>
这将确保从重定向的URL的位置标头中删除html扩展名。