gpt4 book ai didi

tomcat - 在 Tomcat web.xml 中禁用通过文件扩展名的访问

转载 作者:行者123 更新时间:2023-11-28 21:49:00 25 4
gpt4 key购买 nike

提前感谢大家-

我将如何通过文件类型禁用通过浏览器的访问?

例如,如果我想禁用对 .xml 文件的所有访问权限,我该怎么做呢?

谢谢

最佳答案

我自己想要一个答案,并且对 JDBCRealm 的答案不满意。

默认隐藏文件夹“WEB-INF”和“META-INF”在静态资源逻辑中是硬编码的,因此使用相同的机制似乎非常困难。您必须替换或修改 DefaultServlet 的某些组合, StandardContext , 和 StandardContextValve .一团糟。

但是我尝试了两种简单的方法来完成您所追求的过滤。

使用 Filter

您可以编写一个通用的 Servlet 过滤器来为任何匹配某个列表的文件返回 404 错误。您可以将该列表设置为 Environment Entries在 context.xml 中,在 properties file 中在类路径上,存储在数据库中,或者任何你喜欢的(即使是硬编码的字符串,如果你是某种受虐狂)。

使用 Valve (特定于 Tomcat)

Tomcat Valves 完成与 Filters 几乎相同的事情,但级别较低。它们不是 Servlet Spec 的一部分,因此您的应用程序无法移植到其他 Servlet 容器。此外,在我的实验中,发送 404 响应不会通过与应用程序中正常发送的 404 响应相同的 channel (例如,如果您设置自定义 404 页面或处理程序,当 404 从 Valve 返回时不会使用它们)

关于tomcat - 在 Tomcat web.xml 中禁用通过文件扩展名的访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1160918/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com