环境:Tomcat8 + Httpd2.4
工作原理:借助于Tomcat的AJP连接器实现Apache与Tomcat的通信
配置步骤:
1. 配置httpd.conf文件
新加:
Include conf/extra/mod_jk.conf
修改:添加index.jsp
<IfModule dir_module>
DirectoryIndex index.html index.jsp
</IfModule>
新增模块:
LoadModule jk_module modules/mod_jk.so
<IfModule jk_module>
Include conf/extra/mod_jk.conf
</IfModule>
2. 创建mod_jk.conf文件
JkWorkersFile "conf/workers.properties"
JkMountFile "conf/uriworkermap.properties"
JkLogFile "logs/mod_jk.log"
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
JkRequestLogFormat "%w %V %T"
注意:将/mod_jk.so库文件放在相应目录位置
3. 创建workers.properties文件
workers.tomcat_home=C:/tomcat-8.0.47/
workers.java_home=C:/Program Files/Java/jre1.8.0_144
worker.list=ajp13
worker.ajp13.port=8009
worker.ajp13.host=localhost
worker.ajp13.type=ajp13
worker.ajp13.lbfactor=1
注意:worker.list定义的值与mod_jk.conf文件保持一致
4. 创建uriworkermap.properties文件
!/*.html=ajp13
!/*.htm=ajp13
!/*.js=ajp13
!/*.css=ajp13
!/*.jpg=ajp13
!/*.jpeg=ajp13
!/*.gif=ajp13
!/*.png=ajp13
!/*.swf=ajp13
!/*.xml=ajp13
!/*.ico=ajp13
/*.jsp=ajp13
/*.do=ajp13
/*.action=ajp13
/*=ajp13
注意:过滤静态资源访问请求,只将动态servlet请求转发给Tomcat处理
5. 启动httpd和tomcat 验证
测试动态访问请求转发Tomcat:
访问:Http://localhost/index.jsp
登陆Tomcat管理员页面
测试静态资源Httpd处理请求:
注意:
如果配置文件中未声明文件的绝对路径,Httpd处理“logs/error.log”格式路径时默添加前缀:${ServerRoot}/,也就是路径是相对httpd的安装路径来定义的。
例如:conf/workers.properties
等价于:C:/apache24/conf/workers.properties
C:/apache24: 表示Httpd安装目录