apache+tomcat配置
安装好apache后,修改conf/httpd.conf文件,在最后添加如下配置:
?
?
LoadModule jk_module modules\mod_jk-1.2.31-httpd-2.2.3.so
#此处mod_jk的文件为你下载的文件,
#下载地址:http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.31/
JkWorkersFile "D:\Tomcat5.0\conf\workers.properties"
#指定tomcat监听配置文件地址
JkLogFile "D:\Tomcat5.0\logs\mod_jk2.log"?
#指定日志存放位置
JkLogLevel info
?
?
JkMount /servlet/* ajp13?
#让Apache支持对servlet传送,用以Tomcat解析
JkMount /*.jsp ajp13?
#让Apache支持对jsp传送,用以Tomcat解析
JkMount /*.do ajp13?
#让Apache支持对.do传送,用以Tomcat解析
JkMount /*.htm ajp13?
?
说明:
1.apache默认的端口为80,可通过修改该文件的如下行更改端口号(修改为81):
?Listen 81 ??
2.apache默认的会为应用添加访问日志,默认配置如下:
?CustomLog "logs/access.log" common
打印log格式如下:
127.0.0.1 - - [15/Jun/2011:11:36:34 +0800] "GET /jetty/jsp/login.jsp HTTP/1.1" ? ? ? 200 ? ? ? ? ?583
?? 访问机器IP ? ? ? ? ? ? 访问时间 ? ? ? ? ? ? ? ? ? ? ? ? ? 请求类型 ? ?访问路径 ? ? ? ? ? ? 协议 ? ? ?状态代码 ? ? 返回客户端字节数 ? ? ? ? ?
?
?
?
下载mod_jk-1.2.31-httpd-2.2.3.so,将该文件放在apache的modules文件夹下。
?
安装好tomcat,在conf下创建文件workers.properties,内容如下:
?
?
workers.tomcat_home=D:\Tomcat5.0
workers.java_home=D:\Program Files\Java\jdk1.6.0_14
ps= 我爱windows 赫赫
worker.list=ajp13 #模块版本
worker.ajp13.port=8009 #tomcat设置的ajp端口
worker.ajp13.host=localhost #Apache主机
worker.ajp13.type=ajp13 #类型
worker.ajp13.lbfactor=1 #代理数,不用修改
?
?
注意tomcat的conf/server.xml中需配置aip端口相应为8009:?<Connector port="8009"??? ? ? ? ? ? ? enableLookups="false" redirectPort="8443" debug="0"?? ? ? ? ? ? ? protocol="AJP/1.3" />?#加载mod_jk Module
LoadModule jk_module modules/mod_jk-apache-2.2.4.so
#指定 workers.properties文件路径
JkWorkersFile conf/workers.properties
#指定那些请求交给tomcat处理,"controller"为在workers.propertise里指定的负载分配控制器
#JkMount /*.jsp controller
JkMount /* controller
?
?
?
?workers.properties 的文件内容?worker.list = controller,tomcat1,tomcat2? #server 列表
#========tomcat1========
worker.tomcat1.port=8009???????? #ajp13 端口号,在tomcat下server.xml配置,默认8009
worker.tomcat1.host=localhost? #tomcat的主机地址,如不为本机,请填写ip地址
worker.tomcat1.type=ajp13
worker.tomcat1.lbfactor = 1?? #server的加权比重,值越高,分得的请求越多
#========tomcat2========
worker.tomcat2.port=9009?????? #ajp13 端口号,在tomcat下server.xml配置,默认8009,如果两个Tomcat在不同机器上就不需要改变这个端口号
worker.tomcat2.host=localhost? #tomcat的主机地址,如不为本机,请填写ip地址
worker.tomcat2.type=ajp13
worker.tomcat2.lbfactor = 1?? #server的加权比重,值越高,分得的请求越多
#========controller,负载均衡控制器========
worker.controller.type=lb
worker.controller.balanced_workers=tomcat1,tomcat2?? #指定分担请求的tomcat
worker.controller.sticky_session=1
?
复制mod_jk-apache-2.2.4.so文件到C:\Program Files\Apache Software Foundation\Apache2.2\modules这个目录下
下面配置Tomcat 部分,第一个Tomcat部分就不用配置了,直接配置第二个Tomcat的Server.xml(如果两个Tomcat在两台机器上就都不需要配置)
?
Tomcat1里面加上jvmRoute="tomcat1"????
Tomcat2里面加上jvmRoute="tomcat2"
第二部分,配置集群
?? 只配置负载均衡还不行,还要session复制,也就是说其中任何一个tomcat的添加的session,是要同步复制到其它tomcat, 集群内的tomcat都有相同的session
1. 修改tomcat1, tomcat2的server.xml,将集群部分配置的在注释符删掉,并将tomcat2的4001端口改为4002,以避免与tomcat冲突,当然,如果是两台电脑,是不用改端口的,去掉注释符即可
然后分别启动Apache、Tomcat1、Tomcat2吧