当前位置: 代码迷 >> 综合 >> windows环境下JSP环境搭建:Apache2.4+tomcat8.0(测试中,未完善)
  详细解决方案

windows环境下JSP环境搭建:Apache2.4+tomcat8.0(测试中,未完善)

热度:50   发布时间:2024-01-28 07:35:23.0

一、首先说明一下什么是mod_jk?

Apache自身是用来加载静态页面的,如果要加载动态页面比如jsp,还要做与Tomcat的整合,mod_jk就是整合Apache2.4与Tomcat的连接器。三者关系如下:

Apache:这里指的是httpd,Web服务器,用来处理静态文件。

tomcat:应用服务器,是servlet、jsp(jsp在后面其实也是被解释成servlet)的运行容器,可以处理servlet、jsp这些动态文件,当然也可以处理静态文件,但是性能不如Apache、nginx这些web服务器性能好。虽然一般还是单独使用web服务器来处理静态文件,应用服务器处理动态文件。

mod_jk:是tomcat提供的、用来连接Apache与tomcat的一个插件,默认下载的tomcat中是没有的,需要单独下载。

二、mod_jk的下载地址 

http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/windows/

选择合适的版本,Apache2.4就选择如下图所示:

三、配置Apache2.4与Tomcat的连接

1、打开Apache24\conf\httpd.conf,在最后一行加入下方代码:

Include conf/mod_jk.conf

2、将下载的mod_jk-apache-2.2.4.so文件放到Apache24\modules目录下

3、在Apache24\conf\目录里创建一个mod_jk.conf文件,代码如下:

#加载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 /*.do controller
JkMount /*WEB-INF controller
JkMount /*j_spring_security_check controller
JkMount /*.action controller
JkMount /servlet/* controller
JkMount /*.jsp controller
JkMount /*.do controller
JkMount /*.action controller
JkMount /* controller

4、在Apache24\conf目录下建立workers.properties文件,代码如下:

worker.list =controller,tomcat1,tomcat2   #server 列表
#========tomcat1========    
worker.tomcat1.port=9019       #ajp13 端口号,在tomcat下server.xml配置,默认8009
worker.tomcat1.host=localhost  #tomcat的主机地址,如不为本机,请填写ip地址 
worker.tomcat1.type=ajp13
worker.tomcat1.lbfactor = 1    #server的加权比重,值越高,分得的请求越多 
#========tomcat2========  
worker.tomcat2.port=8019
worker.tomcat2.host=localhost
worker.tomcat2.type=ajp13
worker.tomcat2.lbfactor = 1
#========controller,负载均衡控制器========   
worker.controller.type=lb
worker.controller.balanced_workers=tomcat1,tomcat2   #指定分担请求的tomcat    
worker.controller.sticky_session=false               #回话是否有粘性,false表示无粘性,同一个回话的请求会到不同的tomcat中处理
worker.controller.sticky_session_force=false         #当一个节点蹦了,如果设值为true,那么服务器返回500错误给客户端,如果设值为false,则转发给其他的tomcat,但是会丢失回话信息

 

  相关解决方案