zoukankan      html  css  js  c++  java
  • Tomcat虚拟主机及Root Context配置

    1.虚拟主机
    对一个Tomcat,可以配置多台虚拟主机。简单地说,就是让一台服务器可以对应多个主机名。这在Tomcat中称之为Host。要求每个Host的Name必须唯一。
    配置方法:
    在$CATALINA_HOME/conf/server.xml中定义了所有的Host。Tomcat默认会建立一个localhost的虚拟主机,如下:
    <Host name="localhost"  appBase="webapps"
                unpackWARs="true" autoDeploy="true"
                xmlValidation="false" xmlNamespaceAware="false"> 
    </Host>
    其中,
    appBase指定了该虚拟主机上应用的部署位置。一般填写相对于CATALINA_HOME的相对路径即可。
    其他参数可以参考Tomcat文档。

    如果需要建立其他虚拟主机,只需要仿照上例,声明其他不同name的Host即可。

    2.Root context
    在一个Host上,可以部署多个应用。每个应用都有不同的Context Path。Context Path会出现在用户访问该应用的URL中。例如, 如果指定了应用的Context Path为/ABC,该应用的URL可能就是http://localhost:8080/ABC,。自然有人会问,可不可以没有Context Path呢?我的理解是可以只有Root Context,即Context Path就是/。如此一来,上例中的URL就变成http://localhost:8080/。
    配置方法:
    在$CATALINA_HOME/conf/server.xml中,对于每个Host而言,都可以通过Context子元素指定其Root Context所在位置。如下:
    <Host name="localhost"  appBase="webapps"
                unpackWARs="true" autoDeploy="true"
                xmlValidation="false" xmlNamespaceAware="false"> 
    <Context docBase="webapps/docs" path="/"
           privileged="true" antiResourceLocking="false" >
    </Context>
    </Host>
    此处,就将该主机的Root Context指向了$CATALINA_HOME/webapps/docs。
    有几点需要注意:
    a.因为每个应用都需要有不同的Context Path区分,所以一般来说每个Host只有一个Root Context。
    b.在Host中不指定Root Context时,Tomcat会自动将appBase下的ROOT(全大写)文件夹作为Root Context所指位置。这也是Tomcat刚安装时的设置。如果指定了Root Context,则需要将ROOT文件夹删除。因为Tomcat会优先使用ROOT文件夹。
    c.在网上查询到,还可以在$CATALINA_HOME/conf/Catalina/localhost/ROOT.xml中指定localhost的Root Context,但是在Tomcat 6.0.26中没有实验成功。

  • 相关阅读:
    最小生成树
    线段树
    编程快捷键
    线段树的动态开点
    常用库
    线性求逆元
    文件读入
    树上倍增(LCA)
    set容器
    快读与快写
  • 原文地址:https://www.cnblogs.com/daition/p/1737876.html
Copyright © 2011-2022 走看看