单个网站xml文件方式部署

微软的IIS中可以部署多个独立的网站(不是虚拟目录),每个网站对应独立端口,独立运行,互不影响。如下

Tomcat:如何在一个Tomcat中部署不同端口的多个网站项目_xml文件

Tomcat:如何在一个Tomcat中部署不同端口的多个网站项目_xml_02

而Tomcat中默认是将网站项目部署到webapps目录下,或在conf\Catalina\localhost下添加网站配置xml文件如wxweb.xml,映射到网站目录。

访问地址是​​http://localhost:8080/wxweb/test.html​​ 其中wxweb是网站项目名称。这样的设置是以虚拟目录方式部署,所有网站项目都在一个端口(默认8080)下。

wxweb.xml文件内容如下

<Context path="/wxweb" docBase="D:\mywork\Wechat\wxweb"/>

以上网站部署完成。

 

不同端口多个网站部署

如果想像IIS那样使用不同端口,可以做以下设置。

在conf目录下的server.xml中,添加新的<Service >节点

<Service name="Catalina">
...
</Service>
<!-- 新服务端口设置 -->
<Service name="Catalina2">
<Connector port="8081" protocol="HTTP/1.1"
connectionTimeout="60000" maxThreads="450" redirectPort="8443" URIEncoding="UTF-8"/>

<Connector port="28014" protocol="AJP/1.3" redirectPort="8443" />
<Engine name="Catalina" defaultHost="localhost">
<Realm className="org.apache.catalina.realm.LockOutRealm">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
</Realm>

<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<!-- 网站项目位置 -->
<Context path="" docBase="E:\mywork\MySvn\Wechat\WechatWebV3.0\wxweb" reloadable="true" />
</Host>
</Engine>
</Service>

设置完重启Tomcat,现在可以使用8081来访问新网站,原8080端口下的网站也能正常访问。

Tomcat:如何在一个Tomcat中部署不同端口的多个网站项目_xml文件_03