分享

tomcat映射路径(应用程序基本目录)的配置方法

 shattermemo 2011-09-08
正如上篇博文 server.xml 配置详解 中所提到的那样,tomcat的默认映射路径是 host 标签的

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 path="/myapp" docBase="工程地址" debug="0" reloadbale="true">

 

XML文件名称:Host的虚拟目录

docBase:物理目录的绝对地址。

 

重启服务器后http://localhost:8080/myapp/将被映射到“工程地址”路径下 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多