您的位置:首页 > 运维架构 > Tomcat

同一Windows主机上一个Apache服务+两个独立Tomcat服务配置实例

2008-06-24 11:24 465 查看
现实应用中,同一台主机上会有很多个不同的Tomcat应用服务,在应用服务更新时,操作系统的Tomcat服务需要重新启动.为了让几个相互独立的应用在更新时不相互影响,将服务设计为在前端使用一个Apache服务接受静态页面请求,后端启动两个Tomcat服务接受不同虚拟主机的JSP请求。本文侧重点在Apache与Tomcat的整合上,其他过程大家可参考其他文档。配置步骤大致如下:
一、在XP操作系统上安装一个Apache服务和两个tomcat服务

安装过程从略,可参考其他关于安装此服务的安装过程。

1.配置目录D:/Apache2/conf下的文件httpd.conf:

### Section 3: Virtual Hosts
# Use name-based virtual hosting.
NameVirtualHost *:80

# 装载mod_jk模块,用于处理Apache和Tomcat的连接
LoadModule jk_module modules/mod_jk.so

# 指出mod_jk模块工作所需要的工作文件workers.properties的位置
JkWorkersFile "D:/Apache2/conf/workers.properties"

# 记录日志的工作级别 # Set the jk log level [debug/error/info]
JkLogLevel info

# 模块工作日志的目录位置,可自由定义
JkLogFile "D:/logs/mod_jk2.log"

<VirtualHost *:80>
ServerAdmin xionghaijian@163.com
DocumentRoot "D:/Apache2/htdocs"
ServerName xionghaijian.3322.org

# 将所有servlet 和jsp请求通过Ajp13的协议送给Tomcat,让Tomcat来处理
JkMount /servlet/* worker1
JkMount /*.jsp worker1
JkMount /*.do worker1
JkMount /*/*.jsp worker1
JkMount /* worker1
</VirtualHost>

<VirtualHost *:80>
ServerAdmin xionghaijian@163.com
DocumentRoot "D:/Apache2/htdocs"
ServerName xionghaijian.vicp.net

# 将所有servlet 和jsp请求通过Ajp13的协议送给Tomcat,让Tomcat来处理
JkMount /servlet/* jvm1
JkMount /*.jsp jvm1
JkMount /*.do jvm1
JkMount /*/*.jsp jvm1
JkMount /* jvm1
</VirtualHost>

2.配置目录D:/Apache2/conf下的文件workers.properties:

workers.tomcat_home=D:/Tomcat 5.0 #让mod_jk模块知道Tomcat
workers.java_home=d:/jdk1.4 #让mod_jk模块知道j2sdk
ps=/
worker.list=worker1,jvm1
worker.worker1.port=8009
worker.worker1.host=localhost
worker.worker1.type=ajp13
worker.worker1.socket_keepalive=true

worker.jvm1.port=18009
worker.jvm1.host=localhost
worker.jvm1.type=ajp13
worker.jvm1.socket_keepalive=true

三、配置tomcat

分别配置两个tomcat服务。根据需要在各个tomcat的conf目录下的server.xml文件中,定义一个Coyote/JK2 AJP 1.3连接器端口,这些端口可自由定义,但不要重复,并且此处定义之后worker列表中的端口参数项应与之相对应。本例选择的两个端口是8009和18009。

二、配置Apache服务
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: