因为web-inf下,应用服务器把它指为禁访目录,即直接在浏览器里是不能访问到的。但是可以让servlet进行访问,
如web-inf下有a.jsp则可以用request.getRequestDispatcher("/WEB-INF/a.jsp").forward(request,response);如果想访问web-inf下的html文件的话,用request.getRequestDispatcher("/WEB-INF/a.html").forward(request,response);是访问不了的。原因很简单,jsp就是servlet,会被编译成class文件,而html的就不行了。 所以需要配置以下conf下的web.xml文件才能去访问html。
具体实现如下: 用打开tomcat安装目录下conf下的web.xml文件,找到
<servlet-mapping>
<servlet-name>jsp</servlet-name>
<url-pattern>*.jsp</url-pattern>
</servlet-mapping>
然后在它下面添加
</servlet-mapping>
<servlet-mapping>
<servlet-name>jsp</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping>
这样的话,就能用request.getRequestDispatcher("/WEB-INF/a.html").forward(request,response);去访问web-inf下的html了

本文介绍了解决在WEB-INF目录下直接访问HTML文件的问题。通过配置Tomcat的web.xml文件,使服务器能够正确解析并显示这些文件。具体操作包括添加新的servlet映射,允许*.html文件如同*.jsp文件一样被处理。
2万+

被折叠的 条评论
为什么被折叠?



