繁体   English   中英

Tomcat 7 / WEB-INF /目录映射

[英]Tomcat 7 /WEB-INF/ directory mapping

我想将所有请求映射到特定的servlet,但Tomcat不会让我映射/ WEB-INF /目录。

我的web.xml文件。

<servlet>
    <servlet-name>TestServlet</servlet-name>
    <servlet-class>mypackage.TestServlet</servlet-name>
</servlet>
<servlet-mapping>
    <servlet-name>TestServlet</servlet-name>
    <url-pattern>/*</url-pattern>
</servlet-mapping>

这可以正常工作,直到你在/ WEB-INF /目录中请求一个页面(给出404)。 有没有办法将所有内容(包括/ WEB-INF /目录)映射到servlet?

我也尝试使用/ WEB-INF / *映射servlet,但它没有效果。

不可以。您无法直接从外部访问WEB-INF文件。

你必须有一个html或一个jsp文件,外面会将请求重定向到WEB-INF文件夹中的文件。

根据tomcat标准,您需要将所有* .html,* .jsp等放在应用程序根目录中。 / WEB-INF目录主要用于包含web.xml,类和库,但不包含jsp / htmls。 您无法直接导航到WEB-INF目录下的任何文件/工件(也适用于META-INF)。

这是servlet引擎的一个安全功能:WEB-INF下的内容受到保护,无法通过URL从“外部”访问。 否则,任何人都可以通过组装适当的URL来读取应用程序/数据库配置等敏感细节。

您需要遵循有关打包Web应用程序的指导原则,请在此处阅读更多内容:

http://tomcat.apache.org/tomcat-6.0-doc/appdev/deployment.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM