搜索了一些这方面文章,大家好像都说配的很麻烦,还经常出现问题,我也就尝试了一下。实战后发现,并不像想象中的复杂,完全没有根据网上的所谓的教程来进行,只是认真的看了一下官方的reference,理解了原理,就轻松搞定了。
下面讲述一下我的配置过程:
1. 安装测试
安装Apache2.0.59和Tomcat5.5.23的过程我就不讲,一路next就可以了
安装完后顺便测试一下
http://localhost 测试Apache
http://localhost:8080 测试Tomcat
2. 安装mod_jk
下载mod_jk的二进制文件http://tomcat.apache.org
mod_jk-apache-2.0.59.so
放到$Apache/modules下面作为需要在Apache启动时加在的模块
3. 在Apache中配置mod_jk
修改$Apache/conf/httpd.conf,将mod_jk的配置文件包含进来
#for tomcat
Include "F:"Program Files"Apache Group"Tomcat5.5"conf"jk"mod_jk.conf"
实际上mod_jk.conf这个文件还没有,需要我们自己创建。在相应的目录下创建mod_jk.conf文件,保存以下内容
# 加载mod_jk模块
LoadModule jk_module modules/mod_jk.so
# 定义作为Tomcat的worker的属性文件的路径
JkWorkersFile "F:"Program Files"Apache Group"Tomcat5.5"conf"jk"workers.properties"
# 定义jk共享内存的文件
JkShmFile "F:"Program Files"Apache Group"Tomcat5.5"logs"mod_jk.shm"
# 定义日志文件
JkLogFile "F:"Program Files"Apache Group"Tomcat5.5"logs"mod_jk.log"
# 定义日志级别[debug/error/info]
JkLogLevel info
# 选择日志时间戳格式
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
# 让Apache将类似的URI请求转发给Tomcat的名为tomcat55_local的worker
JkMount /tomcat-docs/* tomcat55_local
JkMount /jsp-examples/* tomcat55_local
# 取消部分静态文件的请求转发
JkUnMount /*.html tomcat55_local
JkUnMount /*.htm tomcat55_local
JkUnMount /*.jpg tomcat55_local
JkUnMount /*.gif tomcat55_local
# 联合目录定义
Alias /tomcat-docs "F:"httpfiles"tomcat_serve"tomcat-docs"
<Directory "F:"httpfiles"tomcat_serve"tomcat-docs">
Options Indexes
AllowOverride None
Order allow,deny
Allow from all
</Directory>
Alias /jsp-examples "F:"httpfiles"tomcat_serve"jsp-examples"
<Directory "F:"httpfiles"tomcat_serve"jsp-examples">
Options Indexes
AllowOverride None
Order allow,deny
Allow from all
</Directory>
4. 具体定义tomcat的worker
在相应的目录下(F:"Program Files"Apache Group"Tomcat5.5"conf"jk"workers.properties)建立workers.properties文件作为worker的属性定义文件,保存一下内容:
# 定义Tomcat安装目录和Java的安装目录
workers.tomcat_home="F:"Program Files"Apache Group"Tomcat5.5"
workers.java_home="F:"Program Files"Java"jdk1.5.0_09"
# 定义分隔符
ps="
# 定义使用的worker
worker.list=tomcat55_local, loadbalancer
# 定义作为负载平衡的worker的loadbalancer的类型和平衡对象
worker.loadbalancer.type=lb
worker.loadbalancer.balance_workers=tomcat55_local
# 定义作为tomcat转发worker的相关属性,包括tomcat的监听端口, 主机, 通讯协议, 负载系数
worker.tomcat55_local.port=8009
worker.tomcat55_local.host=localhost
worker.tomcat55_local.type=ajp13
worker.tomcat55_local.lbfactor=2
重新启动Apache和Tomcat,大功告成