AEM 6.3部分资源访问时出现空白页/404问题求助
结合你给出的错误日志和现象,我整理了几个最可能的原因:
ACS Commons 依赖的自定义错误页面缺失
日志里明确抛出了ResourceNotFoundException: Resource at '/content/assets-project/errors/404.html' not found,这说明当AEM尝试处理资源访问的异常时(比如权限不足、资源渲染失败),配置的ACS Commons工具需要调用这个自定义404错误页,但该页面不存在。这种情况下,原本的错误响应被这个二次错误覆盖,最终返回空白页。而部分资源刚好触发了这个异常处理逻辑,其他资源则没有。资源访问权限配置不一致
你提到能通过assetdetails页面管理资源,说明管理用户拥有足够权限,但直接访问资源链接的用户(比如匿名用户)可能没有这些特定资源的读取权限。AEM本应返回403或404,但因为找不到配置的错误页,所以返回空白。建议对比正常资源和异常资源的ACL设置,检查匿名用户或访问用户的权限差异。Dispatcher 缓存/路由规则问题
如果你的环境配置了Dispatcher,可能部分资源的直接访问路径被Dispatcher的规则拦截,或者缓存了错误的空白响应。assetdetails页面和JSON接口走的是AEM的管理/API路径,可能不在Dispatcher的拦截或缓存规则范围内,所以不受影响。可以尝试清除Dispatcher缓存,或者检查dispatcher.any里的允许/拒绝规则是否针对/content/dam下的资源做了特殊限制。资源MIME类型或本身异常
少数情况下,部分JPG资源可能在上传时损坏,或者AEM没有正确识别其MIME类型,导致返回的Content-Type不正确,浏览器无法解析显示,表现为空白页。而assetdetails页面只读取资源元数据,JSON接口也是返回结构化数据,不会涉及图片内容渲染,所以能正常访问。可以尝试重新上传异常资源,或者检查AEM中MIME类型的配置(在OSGi控制台的Apache Sling MIME Type Service中)。
内容的提问来源于stack exchange,提问作者Suren Konathala

