针对本教程,假设你有一个开发主机,并有两个主机名:ren 和 stimpy。再来假设一个 Tomcat 运行实例,$CATALINA_HOME 表示它的安装位置,可能是 /usr/local/tomcat。
另外,本教程使用 UNIX 风格的分隔符及命令,如果你使用的是 Windows,则需要相应修改一下。
编辑 server.xml 文件的 Engine 部分,如下所示:
<Engine name="Catalina" defaultHost="ren">
<Host name="ren" appBase="renapps"/>
<Host name="stimpy" appBase="stimpyapps"/></Engine>
注意:每个主机的 appBase 下的目录结构不能彼此重复。
关于 Engine 与 Host 元素的其他属性,可参看相关的配置文档。
创建每一个虚拟主机的目录:
mkdir $CATALINA_HOME/renappsmkdir $CATALINA_HOME/stimpyapps
上下文通常位于 appBase 目录下。比如,在 ren 主机上配置 war 文件形式的 foobar 上下文,使用 $CATALINA_HOME/renapps/foobar.war。注意,ren 主机的默认或 ROOT 上下文应配置成 $CATALINA_HOME/renapps/ROOT.war(WAR 文件形式) 或 $CATALINA_HOME/renapps/ROOT(目录形式)。
注意:对于同一主机而言,上下文的 docBase 不能和 appBase 相同。
在上下文中,创建一个 META-INF 目录,将你的上下文定义文件(context.xml)放入其中,比如说:$CATALINA_HOME/renapps/ROOT/META-INF/context.xml。这能使部署更加容易,特别对于分配的是WAR 文件时。
3. context.xml - 方法 2
在 $CATALINA_HOME/conf/Catalina 下创建一个结构:
mkdir $CATALINA_HOME/conf/Catalina/renmkdir
mkdir $CATALINA_HOME/conf/Catalina/renmkdir $CATALINA_HOME/conf/Catalina/stimpy
注意结尾那个名为“Catalina”的目录表示的是如前所示的 Engine 元素的 name 属性。
对于默认的 Web 应用,则按如下方式添加:
$CATALINA_HOME/conf/Catalina/ren/ROOT.xml$CATALINA_HOME/conf/Catalina/stimpy/ROOT.xml
如果想为每个主机都使用 Tomcat Manager 应用,则需要按下列方式来添加它:
cd $CATALINA_HOME/conf/Catalina
cp localhost/manager.xml ren/
cp localhost/manager.xml stimpy/
有关 Context 元素的其他属性,可以参阅相关的配置文档:Context。