jetty - Jetty静态资源在列出时不尊重文件权限(具体阅读)
问题描述
我有一个简单的 xml 上下文来显示静态文件。服务器加载正常,显示文件的页面按预期加载。问题是权限为 000 的文件仍显示在列表中。如果我单击其中一个文件,我会收到一个 java 堆栈跟踪错误,指出码头没有读取文件的权限(因为它没有)。
有谁知道如何让这些没有读取权限的文件不显示?
我正在使用码头发行版 9.4.34.v20201102。我将 jetty 作为服务运行,并在 /etc/default/jetty 中设置了 JETTY_USER。
这是我在 JETTY_BASE/webapps/static.xml 中的简单上下文
<Configure class="org.eclipse.jetty.server.handler.ContextHandler">
<Set name="contextPath">/</Set>
<Set name="handler">
<New class="org.eclipse.jetty.server.handler.ResourceHandler">
<Set name="resourceBase">/mshr/test/</Set>
<Set name="directoriesListed">true</Set>
</New>
</Set>
</Configure>
解决方案
Jetty ResourceHandler、ResourceService 或 DefaultServlet 不支持此功能。
在文件列表期间询问文件权限实际上是一件相当昂贵的事情(取决于文件系统)。
这就是 Jetty 不这样做的原因。
如果您有其他感觉,请在https://github.com/eclipse/jetty.project/issues提出请求
推荐阅读
- powerbi - Power BI 视觉对象中的时间框架(又名 Sprint)字段出现故障
- django - 有没有办法用组件构建页面
- python - 使用 for 循环在列表中搜索值并打印搜索结果
- python-3.x - Python Groupby 字典键列表
- javascript - 如何通过id和innertext点击按钮?
- testing - 性能测试 - Jmeter 中的 200 个并发用户测试在 8 台机器上失败
- ios - 如何翻译 NSLocationTemporaryUsageDescriptionDictionary (iOS 14) 字符串?
- powerquery - Power Query Duration 格式一致性
- python - 如何使用 scrapy 和 splash 从这个网站上抓取?
- javascript - MaterialUI Redux connect() 使用 TextArea 和提交表单。关于 func 组件中的 refs 的警告