如何在 Tomcat 的 web.xml 中为欢迎文件映射过滤器?
Posted
技术标签:
【中文标题】如何在 Tomcat 的 web.xml 中为欢迎文件映射过滤器?【英文标题】:How to map a filter for welcome-file in web.xml for Tomcat? 【发布时间】:2012-04-26 20:20:36 【问题描述】:我创建了一个Filter
来检查带有请求对象的Cookie
s 和forward
相应的请求,这要感谢this 和this 问题..现在我想映射这个Filter
只是welcome-file
,正如我在 web.xml
中声明的那样。
假设我将welcome-file
设置为index.html
,那么我必须为www.example.com/
和www.example.com/index.html
映射Filter
,但不允许为其他任何东西,例如www.example.com/foo/*
或www.example.com/*
,我的意思不是任何东西除了welcome-file
请求。
我正在使用 Apache Tomcat 7.0.22 容器。
【问题讨论】:
【参考方案1】:只需将这些添加到您的 web.xml 中
<filter>
<filter-name>myFilter</filter-name>
<filter-class>com.examples.myFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>myFilter</filter-name>
<url-pattern>/index.html</url-pattern>
</filter-mapping>
【讨论】:
这对www.example.com
案子有帮助吗? URL 模式不清楚 contanier 将提供什么文件?
是的,如果您没有更改 context.xml 中的主机名。 '/' 代表应用程序的根目录,并且 index.html 将被提供,因为您在欢迎文件中提到了相同的内容,它应该在 WebContent 文件夹中以上是关于如何在 Tomcat 的 web.xml 中为欢迎文件映射过滤器?的主要内容,如果未能解决你的问题,请参考以下文章