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

nab*_*llo 1 java crx apache-felix sling aem

当在调度程序上请求页面时,我在发布实例error.log中看到了这一点

\n\n
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.\n
Run Code Online (Sandbox Code Playgroud)\n\n

因此etc.clientlibs不会加载到调度程序中,而是发回 404。

\n\n

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

\n\n

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

\n\n
    \n
  1. 允许匿名 读取访问/etc
  2. \n
  3. 明确拒绝 的第一级子级的 匿名 读取访问,/etc以确保您不\xe2\x80\x99t 允许事物通过。
  4. \n
\n\n

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

\n\n

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

\n\n

谢谢,

\n\n

尼古拉

\n

nab*_*llo 5

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

sling:internalRedirect="[/content/project/us/en,/]"
Run Code Online (Sandbox Code Playgroud)

sling:internalRedirect="[/,/content/project/us/en]"
Run Code Online (Sandbox Code Playgroud)

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