第一步: 在http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.6
下载mod_jk-1.2.26-httpd-2.2.4.so文件,放到apache2/modules目录中。
第二步: workers.properties:
workers.tomcat_home=D:/My_Work/Tomcat/apache-tomcat-6.0.14
workers.java_home=D:/Program Files/Java/jdk1.5.0_07
ps=/
worker.list=ajp13
worker.ajp13.port=8009
worker.ajp13.host=localhost
worker.ajp13.type=ajp13
worker.ajp13.lbfactor=1
第三步:用记事本打开apache/conf/httpd.conf文件末尾,添加下面一段:
LoadModule jk_module modules/mod_jk.so
JkWorkersFile "D:/Program Files/Apache Software Foundation/Apache2.2/modules/workers.properties"
#ServerAdmin wangguiwei@gmail.com
#ServerName localhost
DirectoryIndex index.html index.htm index.jsp
JkMount /* ajp13
JkAutoAlias "D:/My_Work/Tomcat/apache-tomcat-6.0.14/webapps"
Options Indexes FollowSymLinks
#allow from all
保存,停止apache服务,在启动,就可以将新配置应用了。
整合的基本原理
作为Apache下面的子项目,Tomcat 与 Apache之间有着天然的联系。在实际操作中,主要是Apache作为主服务器运行,当监听到有jsp或者servlet的请求时,将请求转发给tomcat服务器,由tomcat服务器进行解析后,发回apache,再由apache发回用户。
在tomcat中有两个监听的端口,一个是8080用于提供web服务,一个是8009用于监听来自于apache的请求。当apache收到jsp或者servlet请求时,就向tomcat 的8009端口发送请求,交由tomcat处理后,再返回给apache,由apache返回给客户。
配置说明
在tomcat的conf目录下建一个workers.properties的文本文件,添加如下配置
workers.tomcat_home="tomcat安装目录"
#让mod_jk模块知道Tomcat的安装路径
workers.java_home="java安装目录"
#让mod_jk模块知道jdk路径
ps="
worker.list=ajp13
#这里是关键,名字要和httpd.conf的一致。如果这里改了httpd.conf也要改。
worker.ajp13.port=8009
#工作端口,tomcat的jk监听端口,可以查看Server.xml中有port="8009"
worker.ajp13.host=localhost
#Tomcat所在机器,如果安装在与apache不同的机器则需要设置IP
worker.ajp13.type=ajp13
#类型,好像不能改,会出问题
worker.ajp13.lbfactor=1
#负载平衡因子
修改Apache设置
修改apache安装目录下conf目录下的httpd.conf,增加如下配置
LoadModule jk_module modules/mod_jk-apache-2.2.4.so
JkWorkersFile "tomcat安装目录/conf/workers.properties"
JkLogFile "apache安装目录/logs/mod_jk.log"
JkMount /*.jsp ajp13
JkMount /*.do ajp13
整合操作说明
mod_jk-1.2.26-httpd-2.2.4.so相当于是apache与tomcat之间的桥梁一样,所以在apache的配置文件下面加上LoadModule jk_module modules/mod_jk-1.2.26-httpd-2.2.4.so 将此模块载入。
JkWorkersFile "tomcat安装目录/conf/workers.properties" 说明了mod_jk-1.2.26-httpd-2.2.4.so 如何工作,当出现要转发时,将请求发送到那里进行处理,代表了一系列的工作参数。
JkLogFile "apache安装目录/logs/mod_jk.log" 设定日志的地址。
JkMount 说明了将什么样的URL进行发送到tomcat进行处理。JkMount /*.jsp ajp13 说明了要将jsp请求发到tomcat,JkMount /*.do ajp13说明了要将.do型的servlet发到tomcat进行处理。在实际的分发中,如果servlet命名不带后缀的话,将无法被识别,也就无法进行处理。