tomcat主目录(ROOT.xml)和虚拟目录

1. 在Host中不指定Root Context时,Tomcat会自动将appBase下的ROOT(全大写)文件夹作为Root Context所指位置。这也是Tomcat刚安装时的设置。如果指定了Root Context,则需要将ROOT文件夹删除。因为Tomcat会优先使用ROOT文件夹。

2. 还可以在$CATALINA_HOME/conf/Catalina/localhost/ROOT.xml中指定localhost的Root Context

3. 在默认安装后,tomcat的主目录是webapps/root目录,对应的是$CATALINA_HOME/conf/Catalina/localhost/ROOT.xml这个部署文件

4. 注意:我们创建虚拟目录的时候也是这样来进行设置的,只是context这个标签的path属性不为空。

5. 我们设置虚拟目录和主目录,都会在C:/Tomcat/conf/Catalina/localhost目录下生成相应的xml文件,因此,当我们在server.xml里面删除了主目录和虚拟目录的设置后,如果系统还没有生效,这时候我们就要察看一下这个目录下的xml文件是不是已经被删除了,如果没有被删除,他还是对tomcat起作用的,我们必须手动删除。

6. 通过测试我发现,每当我们访问一个地址的时候,tomcat首先是到C:/Tomcat/conf/Catalina/localhost目录下去察看有没有存在主目录或虚拟目录的xml文件,如果有xml文件,就按xml里的路径进行访问,如果没有xml文件,就到server.xml文件里去察看是否配置context标签,如果配置了context标签,则在C:/Tomcat/conf/Catalina/localhost目录下生成一个对应的xml文件,以便于下次直接验证而不再访问server.xml,与此同时打开context里指定的路径,如果server.xml里没有配置context标签,则返回访问错误页面。

7. 我们其实可以直接在C:/Tomcat/conf/Catalina/localhost下建立一个xml文件,用于主目录或者虚拟目录,而不需要去修改server.xml就可以达到配置主目录和虚拟目录的目的,具体xml的格式可以如下:

<?xml version='1.0' encoding='utf-8'?>
<Context crossContext="true" docBase="E:/tomcatApp/JeasyCMS" path="" reloadable="true">
</Context>

8. 具体是主目录的配置还是虚拟目录的配置取决于path的值。

参考:http://blog.csdn.net/furthersun/article/details/1909724

    http://www.cnblogs.com/daition/archive/2010/05/18/1737876.html

你可能感兴趣的:(tomcat主目录(ROOT.xml)和虚拟目录)