我知道tomcat项目中的WEB-INF文件夹用来存放配置文件和库文件的,并且默认无法通过tomcat访问;
今天我用eclipse创建了新的项目,并在 Catalinalocalhost 中配置了虚拟的路径,其docBase值就设定为存在WEB-INF的文件夹;然后通过浏览器访问虚拟路径下的index.htm文件,tomcat总是报404错误;我将WEB-INF文件夹移走后就可正常访问。
我想问的是,这个WEB-INF文件夹是如何影响tomcat访问虚拟地址的?为什么存在该文件夹后(其中的配置文件web.xml存在,但是没有内容)虚拟路径就不可访问?如果是web.xml文件影响的话,是如何影响的?
WEB-INF目录是Servlet服务器的一个约定(war或webapp内根目录下的WEB-INF/),它里面的文件是不会自动发布到Web的,不允许外部访问。但是你可以用程序代码来间接发布文件。
Servlet还约定了名叫web.xml的配置文件要放在这个目录。
这样约定后Tomcat才知道你的配置放在哪,它好读取配置然后启动你的应用。要不然它只能满大街搜索你的配置文件了。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。