在学到Context配置时,书上说可以通过修改Context的path属性来指定url最终访问的是哪个应用,而docBase指明该应用的具体物理地址。
例如:
<Context path="/test" docBase="testapp" reloadable="true"/>
当访问localhost/test时,访问的就是testapp(相对寻址)这个应用。那么是否可以通过修改path=""来把testapp这个应用当做该主机的默认应用呢?
答案是可以的。只能在conf/server.xml文件中修改才有用,在其他地方配置Context,path和docBase失效。还有一种情况,就是当应用不在Host的appBase(例如webapps)目录下,path和docBase能够起作用,通过docBase指定应用的地址,path指定web应用的url入口。
接下来看看官方对这两个属性的介绍:
文档明确说明了仅仅只在conf/server.xml中才能设置path属性,当其他情况下可以通过文件名或者docBase这个属性来推出path的值。
同样docBase的使用也是有限制的,仅当在server.xml或者应用不在Host的appBase目录下时才设置docBase属性。
为了设置默认的应用,我选择是在server.xml中添加了Context标签,然后设置path=""和docBase属性。详细配置请看我的另一篇博客第五节:tomcat基础
参考: