Tomcat配置建立多站点、多域名、多端口、多应用、多主机汇总大全

Tomcat 配置建立多站点、多域名、多端口、多应用、多主机汇总大全当你使用Tomcat 作为Web Server 的时候,是不是会想过这样的一个问题:如何利用Tomcat 建立多个Web 应用 呢?

Tomcat 配置建立多站点、多域名、多端口、多应用、多主机汇总大全

当你使用Tomcat 作为Web Server 的时候,是不是会想过这样的一个问题:如何利用Tomcat 建立多个Web 应用 呢?

要实现这一点是很简单的, 也有多种方法.(以下说明使用tomcat_home代表Tomcat 安装目录).

一. 首先介绍一下Tomcat 及server.xml

Tomcat 服务器是由一系列的可配置的组件构成,tomcat 的组件可以

在tomcat_home/conf/server.xml文件中进行配置, 每个Tomcat 组件和server.xml 文件的一种配置元素对应.

主要分为4类:

1. 顶层类元素:包括和, 他们位于整个配置文件的顶层.

元素代表整个Catalina Servlet 容器, 由org.apache.catalin.Server 接口定义. 包含一个或多个元素.

元素由org.apache.catalin.Service 接口定义. 包含一个元素, 及一个或多个元素. 多个元素共享一个元素.

2. 连接器类元素

连接器类代表了介于客户与服务之间的通信接口, 负责将客户的请求发送给服务器, 并将服务器的响应结果传递给客户.

元素由org.apache.catalin.Connector 接口定义. 代表了与客户程序实际交互的组件, 它负责接收客户请求, 以及向客户返回响应结果.

3. 容器类元素

容器类元素代表处理客户请求并生成响应的组件.

元素由org.apache.catalin.Engine 接口定义. 每个只能包含一个元素, 元素处理在同一个中的所有元素收到的客户请求.

元素由org.apache.catalin.Host 接口定义. 一个元素中可以包含多个元素. 每个元素定义了一个虚拟主机, 她可以包含一个或多个Web 应用.

元素由org.apache.catalin.Context 接口定义. 代表了运行在虚拟主机上的一个Web 应用. 一个元素可以包含多个元素

4. 嵌套类元素

,

嵌套类元素代表了可以加到容器中的组件,

关于server.xml 的更多信息, 可以参考Tomcat 的文

档:/webapps/tomcat-docs/config/index.html

样例:

disableUploadTimeout="true" port="8080" redirectPort="8443"

maxSpareThreads="75" maxThreads="150" minSpareThreads="25"/>

protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler" redirectPort="8443"/>

二. 建立多个Web 应用方法:

在这之前, 我已经将默认8080更改为80了.

1. 通过配置多个元素(这是最为普遍的方法)

在下配置多个元素

reloadable="true">

reloadable="true">

后通过 主机名:端口/应用名 访问, 如: http://localhost/app1 或 http://localhost/app2

,

2. 通过配置多个元素

在下配置多个元素

www.xok.la

reloadable="true">

www.xok.cc

reloadable="true">

然后通过 主机名:端口 访问, 如: http://xok.la 或 http://xok.cc 需要注意的是这样需要机器连接到局域网上.

3. 通过配置多个元素(多端口 多应用)

在下配置多个元素

disableUploadTimeout="true" port="80" redirectPort="8453"

maxSpareThreads="75" maxThreads="150" minSpareThreads="25"/>

protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler" redirectPort="8453"/>

reloadable="true">

disableUploadTimeout="true" port="90" redirectPort="9443"

maxSpareThreads="75" maxThreads="150" minSpareThreads="25"/>

,

protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler" redirectPort="9443"/>

reloadable="true">

第2个应用只是在默认端口第1位数字上加1

定义了两个Service 分别是Catalina 和Catalina2, 侦听的端口分别是80和90 然后通过 主机名:端口 访问, 如: http://localhost:80 或

标签: