正如上篇博文 server.xml 配置详解
appBase 属性(应用程序基本目录,即存放应用程序的目录 “这个目录下的内容可以通过url访问到”)。那么,我可以修改这个应用程序基本目录吗?可以把它指向到我的工程吗? tomcat映射路径的配置方法 一、默认配置 位置:/conf 文件夹里的server.xml文件 <Host appBase="webapps"> appBase:可以指定绝对目录,也可以指定相对于<CATALINA_HOME>的相对目录.如果没有此项,默认为<CATALINA_HOME>/webapps . 以上定义了默认根目录为"webapps"(相对路径,相对于<CATALINA_HOME>) 二、添加<Context>标签 位置:/conf 文件夹里的server.xml文件 可以通过在Host标签下加上多个Context tag来创建自定义访问。一般我们用Context来覆盖Host的appBase的设定而不是直接修改appBase。 eg: <Context path="" docBase="ROOT" debug="0"/> <Context path="/sample" docBase="sample" debug="0" reloadbale="true"/> <Context path="" docBase="D:\JavaWork\servlet\servlet" debug="0" reloadbale="true"/> path: Host的虚拟目录 docBase: 映射的物理目录的地址,可指定相对路径,相对appBase下,也可以指定绝对路径(例如:D:\Workes\testtomcat\WebRoot)。如果无此项则默认为appBase/ROOT 。 Context 一: path=""(注意不是path="/"),则相当于是这个Host的虚拟根目录,docBase则指出了物理目录的位置为相对于appBase下的ROOT目录。因此在访问在浏览器中输入http://localhost:8080/,则访问到的是webapps下的ROOT目录。 Context 二: 如果你访问http://localhost:8080/sample/ ,则会访问到appBase/sample里的内容。 Context 三: path="",指的是这是Host的虚拟根目录,而docBase指出物理目录是个绝对地址,因为如果你访问http://localhost:8080/ ,则会访问到的是D:JavaWork/servlet/servlet 里的内容 。 三、编写xml文件 位置:conf/catalina/localhost/ 目录下 对于tomcat5.x版本,可以通过在conf/catalina/localhost/目录下的编写xml文件,在其中设置<Context>元素来进行映射。不过,是由以当前xml文件的名称做为虚拟子目录,而不是由path指定。 PS. 这种方法需要重启服务器。 eg:添加myapp.xml <?xml version='1.0' encoding='utf-8'?> <Context XML文件名称:Host的虚拟目录 docBase:物理目录的绝对地址。 重启服务器后http://localhost:8080/myapp/将被映射到“工程地址”路径下 |
|
来自: shattermemo > 《web开发》