日期:2014-05-17  浏览次数:21192 次

windows tomcat 与 apache 环境的搭建
首先安装好apache和tomcat,还有JDK。
我的版本依次是apache2.2.17 ,tomcat 6.0.18,jdk1.6.0_02 。

1.在Apache的conf下建立两个文件 workers.properties 和 mod_jk.conf(文件名可以自定义)

workers.properties:
#指定Tomcat的主目录以及JDK

workers.tomcat_home=D:\Program Files\apache-tomcat-6.0.18

workers.java_home=D:\Program Files\Java\jdk1.6.0_02

#Worker列表

worker.list= ajp13 #定义worker的名称

worker.ajp13.port=8009	#tomcatAJP协议端口号

worker.ajp13.host=127.0.0.1 #服务器地址
	
worker.ajp13.type=ajp13	#连接类型

worker.ajp13.lbfactor=1 #代理数

#worker.ajp13.sticky_session=true 
#此处指定集群是否需要会话复制,如果设为true,则表明为会话粘性,不进行会话复制,当某用户的请求第一次分发到哪台Tomcat后,后继的请求会一直分发到此Tomcat服务器上处理;如果设为false,则表明需求会话复制。 

#worker.ajp13.sticky_session_force=true
#如果上面的sticky_session设为true时,建议此处也设为true,此参数表明如果集群中某台Tomcat服务器在多次请求没有响应后,是否将当前的请求,转发到其它Tomcat服务器上处理;此参数在sticky_session=true时,影响比较大,会导致转发到其它Tomcat服务器上的请求,找不到原来的session,所以如果此时请求中有读取session中某些信息的话,就会导致应用的null异常。


mod_jk.conf:
JkWorkersFile "conf/workers.properties"

JkLogFile "logs/mod_jk.log" 

JkLogLevel info 

JkMount /servlet/* ajp13 

JkMount /*.jsp ajp13

JkMount /*.action ajp13

Alias /shopping  "E:/shopping"

#我的是: Alias /shopping “E:/shopping” 项目地址
#将所有servlet 和jsp请求通过Ajp13的协议送给Tomcat,让Tomcat来处理
#------------------------------------
#JkMount指示,将哪些请求发到Tomcat,如果在其它目录也有servlet,也需在这里映射,
#比如,如果/axis/下面有很几个servlet,可以分别映射,也可以JkMount /axis ajp13全部映射,所有/axis下的访问,都交给tomcat. 
#另外,如果要用tomcat的admin管理,还需要JkMount /admin/* ajp13
#注意,JkMount后面的ajp13是Worker名,应该在下面的workers.properties中定义.


2.将module_jk.so拷贝到appche/modules下面(该文件可以到apache上面下载)

3.修改apache的conf下的httpd.conf

添加下面的内容:

<IfModule ssl_module>
  SSLRandomSeed startup builtin
  SSLRandomSeed connect builtin
</IfModule>

LoadModule jk_module modules/mod_jk.so 

include "C:/Program Files/Apache Software Foundation/Apache2.2/conf/mod_jk.conf" 

修改下面内容
<Directory /> 查找该项
    .....
    deny from all 改为: allow from all
    ....
</Directory>


配置完用apache的Test Configuration测试配置是否正确,如果闪一下则表是配置成功。