tomcat Host及Context 配置

参考资料:web

1、Host配置

对一个Tomcat,能够配置多台虚拟主机。简单地说,就是让一台服务器能够对应多个主机名。这在Tomcat中称之为Host。要求每一个Host的Name必须惟一。tomcat

配置方法:服务器

编辑$CATALINA_HOME/conf/server.xml,添加以下内容:app

<Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true"> 
</Host>

appBase指定了该虚拟主机上应用的部署位置,通常填写相对于CATALINA_HOME的相对路径便可。固然,也能够填写其余地址,如<Context path="" docBase="E:/tomcatApp/JeasyCMS" debug="0"  reloadable="true" />webapp

 

2、Context配置

在一个Host上,能够部署多个应用。每一个应用都有不一样的Context Path,Context Path会出如今用户访问该应用的URL中。示例以下:spa

      <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
           <Context docBase="zhx-web" path=""  reloadable="true"  ></Context> /* Root Context */
           <Context docBase="ROOT" path="/admin"  reloadable="true" ></Context>            /* path 须为空 或 以/开头且不以/结束 */
      </Host>

若是Tomcat绑定的端口为8080,则访问 http://localhost:8080 便可访问 项目zhx-web,访问 http://localhost:8080/admin 便可访问项目 ROOT 。debug

须要注意的是:code

一、当未给Host配置Context时,Tomcat默认把ROOT项目做为Root Context,即此时访问 http://localhost:8080 就是访问ROOT项目server

二、当给Host配置Context时,若是path="" 或 path="/",则至关于将此Context指定为Root Context,上面所举例子的第一个Contextxml

三、即便指定了项目对应的Context,在URL中也能够经过完整路径访问到该项目。如对于上面所举的第一个Context,当访问 http://localhost:8080/zhx-web 时 仍能访问到zhx-web项目

四、当指定了一个本身的项目做为Root Context后,就没法直接经过http://localhost:8080/ROOT访问管理页面了,因此加上 <Context docBase="ROOT" path="/admin" reloadable="true" ></Context> http://localhost:8080/admin访问。

另外,webapps下的ROOT是tomcat的应用程序的根,若是应用程序部署在ROOT中,则可直接经过http://ip:port 访问到

相关文章
相关标签/搜索