java - 无法通过 Dispatcher 访问 AEM/etc.clientlibs

标签 java aem apache-felix sling crx

在调度程序上请求页面时,我在发布实例中看到此信息error.log

18.12.2019 22:13:05.563 *INFO* [x.x.x.x [1576707185560] GET /etc.clientlibs/project/clientlibs/clientlib-all.fd5c5f2e8418f9ae1aa923efb9e7ad95.js HTTP/1.1] com.adobe.granite.ui.clientlibs.impl.ClientLibraryProxyServlet Proxy request to /etc.clientlibs/project/clientlibs/clientlib-all.fd5c5f2e8418f9ae1aa923efb9e7ad95.js not supported.

因此,etc.clientlibs 未在调度程序中加载,而是发回 404。

过滤规则似乎默认允许 clientlibs/0002 {/type "allow"/url "/etc.clientlibs/*"}

我在网上做了一些挖掘,发现了以下潜在的解决方法:

  1. 允许对 /etc 进行匿名读取访问。
  2. 明确拒绝匿名读取/etc第一级子级的访问权限,以确保您不会让事情通过。

虽然这似乎暂时解决了问题,但我认为这充其量只是一种解决方法。

有谁知道此问题的解决方案以及如何在不更改 OOTB 权限的情况下解决此问题?

谢谢

尼古拉

最佳答案

经过多次故障排除后,我相信我找到了解决问题的方法。我的吊索映射需要修改

sling:internalRedirect="[/content/project/us/en,/]"

sling:internalRedirect="[/,/content/project/us/en]"

进行此更改后,一切都会正常解决,而无需更改 OOTB 权限。希望这对其他人有帮助。

关于java - 无法通过 Dispatcher 访问 AEM/etc.clientlibs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59401338/

相关文章:

java - 实现在返回具体类的接口(interface)中定义的克隆吗?

java - 如何在 JAVA 和 GLSL 之间设置和检索变量值?

java - 多个不同对象的二维数组

extjs - 获取 AEM 页面中的所有对话框

java - OSGi 服务类依赖关系

java - mvn 包忽略 pom.xml 中的存储库

java - 如何获取未填充的页面属性

osgi - 是否可以在 CQ 中以编程方式禁用 OSGi 组件?

java - 停止使用的服务包时会发生什么

java - 在 OSGi 环境中开始使用捆绑 DI