我正在将一个巨大的网站从MS CMS 2002转换为Adobe CQ5。在现有CMS中,所有页面都以.htm扩展名引用。当我在CQ5中创建新页面时,它总是具有.html扩展名。有没有办法强迫CQ5使用.htm扩展页面?
答案 0 :(得分:6)
可以在名为SlingServletResolver
的OSGi服务的配置中修改呈现内容的默认扩展名列表。要更改它,请打开以下路径:
/system/console/configMgr/org.apache.sling.servlets.resolver.SlingServletResolver
在CQ安装上并将htm
添加到最后一个选项(默认扩展程序)。您也可以使用sling:OsgiConfig
nodes自动配置服务。
答案 1 :(得分:3)
除了其他答案之外,另一种方法是创建从htm到新html页面的内部重定向。您可以在/ etc / map下创建一个Sling映射,它将htm请求重定向到html。
有关配置吊索映射的信息,请参见http://sling.apache.org/documentation/the-sling-engine/mappings-for-resource-resolution.html根级别映射 - >映射条目规范
答案 2 :(得分:1)
Tomek为此问题提供了最佳解决方案。但是,此解决方案将更改所有页面的扩展名类型。如果您想要另一个解决方案来定位特定页面,那么这就是解决方案:
通过将此文件复制到apps文件夹来覆盖/ libs / foundation / components / page的head.jsp,并指定content-type和content =" text / htm。 现在,您必须将此组件称为每个组件或模板的superResoucetype,无论您想要htm还是任何其他扩展扩展。