在调度程序上请求页面时,我在发布实例中看到此信息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/*"}
我在网上做了一些挖掘,发现了以下潜在的解决方法:
- 允许对
/etc
进行匿名读取访问。 - 明确拒绝匿名读取
/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/