之所以要处理apache和tomcat之间请求关系,是因为最近开发的微信公众号(Java语言开发)要需要和discuz论坛(PHP开发)绑定起来。
参考文章:
http://blog.youkuaiyun.com/johnstrive/article/details/42015167
1、下载JK Module,将下载好的so文件改名为mod_jk.so,并放在apache目录下的modules文件夹中。
2、要修改apache的配置文件,在apache安装目录下的/conf/httpd.conf。在"#LoadModule vhost_alias_module modules/mod_vhost_alias.so“这句话后面加上配置代码:
# 载入mod_jk模块,注意模块文件的路径
LoadModule jk_module modules/mod_jk.so
# 声明workers.properties文件的位置
JkWorkersFile "D:/Program Files/Apache22/conf/workers.properties"
# 声明mod_jk的日志文件位置
JkLogFile "D:/Program Files/Apache22/logs/mod_jk.log"
# 声明mod_jk的日志级别(可选)
JkLogLevel info
# 声明mod_jk的日志的时间戳格式(可选)
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
其中workers.properties文件为tomcat映射文件,里面需要写入tomcat的路径,以便apache把请求交接给tomcat。worker.worker1.port=8009中的8009端口不用更改。
#让mod_jk模块认识Tomcat
workers.tomcat_home=E:\apache-tomcat-7.0.11
#让mod_jk模块认识JRE
workers.java_home=D:\Program Files\java\jdk1.7.0_79
# 添加一个worker到worker列表
worker.list=worker1
# 为worker1设定各个参数
# 工作端口,Tomcat的默认Connector监听端口,可以查看Tomcat的Server.xml中有port="8009"
worker.worker1.port=8009
# Tomcat所在机器,如果安装在与apache不同的机器则需要设置IP
worker.worker1.host=localhost
# worker的类型,允许的值为ajp13、ajp14、lb、status等;ajp13是mod_jk连接WebServer和Tomcat的首选方式(即使用socket作为通信渠道)
worker.worker1.type=ajp13
# 负载平衡因子
worker.worker1.lbfactor=1
3、在httpd.conf文件中继续配置apache要转接给tomcat处理的请求。其中worker1就是workers.properties文件中的worker.list=worker1
JkMount /mall worker1
JkMount /mall/* worker1
JkMount /download/* worker1
JkMount /kefu/* worker1
JkMount /manager/* worker1
JkMount /static/* worker1
JkMount /upload/* worker1
JkMount /confirm worker1
JkMount /tmp/* worker1
JkMount /*.jsp worker1
JkMount /kaptcha/* worker1
JkMount /chatmsg/* worker1
JkMount /dlhprize/* worker1
JkMount /goods/* worker1
JkMount /confirm/* worker1
JkMount /admin/* worker1
JkMount /manager/* worker1
JkMount /mevent/* worker1
JkMount /membercenter/* worker1
JkMount /order/* worker1
JkMount /report/* worker1
JkMount /wxpay/* worker1
JkMount /zhiku/* worker1
JkMount /zhuli/* worker1
4、此外还需要修改以下部分:
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
<span style="color:#ff0000;">deny</span> from all
</Directory>
改为
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
<span style="color:#ff0000;">allow</span> from all
</Directory>
<Directory "/Apache22/htdocs">
改为你的php项目路径
<Directory "E:/root">
DocumentRoot "D:/Program Files/Apache22/htdocs"
改为
DocumentRoot "E:/root"