问题发生背景:
由于公司的web环境大都是tomcat,所以在项目发布出现小问题为了快速解决时常会需要手动增加或修改war包解压后的内容。但是在修改时有的webapps下除了war包解压后的包文件,还会多出一个ROOT文件夹,而且开发通常都会告诉我:别忘了修改ROOT里面的内容。
为什么呢,为什么还要修改ROOT下的内容?
下面先讲解tomcat下webapps中ROOT的作用
tomcat下webapps中ROOT目录的作用:
在初学tomcat时当部署完tomcat,我们输入IP:8080默认端口时通常会出现一个tomcat的欢迎界面,而这个欢迎界面就在webapps的ROOT中。
一般tomcat的访问是"IP:端口/包名"形式的
但ROOT的作用则是省去了包名使得访问tomcat的war包项目只需要"IP:端口"就可以,这可以简化反代的配置。不需要反向代理时写死包名,使得更换项目时不必再对反向代理进行修改。在一定程度上减少了运维人员的工作量。
ROOT目录是怎么出现的呢
刚开始由于对tomcat一无所知,因此对ROOT的出现很是困惑,为什么每次发布前我都把ROOT删掉,在发布后ROOT总是再度出现。之前需要对发布后的项目进行小范围改动时,不知道为什么还要对ROOT进行修改。直到现在才明白对发布后的项目修改时为什么一定要修改ROOT
ROOT的意义在前面已经说到了,它可以简化访问的url,同时在项目包名变更时不必对反向代理进行额外的修改。
ROOT的出现与conf/server.xml配置文件有关
在server.xml文件中有项额外的配置是
docBase可以是war包的路径也可以