我是这样配置的,我的猫端口是8888
我的apache服务器监听端口是9999
apache的 httpd.conf 部分配置如下
ServerRoot "D:/apache"
Listen 9999
#添加PHP解析模块 对所有以PHP结尾的文件使用PHP解析引擎解析
LoadModule php5_module "d:/php5/php5apache2_2.dll "
AddType application/x-httpd-php .php # Using mod_jk.so to redirect dynamic calls to Tomcat
LoadModule jk_module modules\mod_jk.so
JkWorkersFile "conf\workers.properties"
JkLogFile "logs\mod_jk.log"
JkLogLevel debug
JkMount /*.jsp worker1
JkMount /jspapp/* worker1
workers.properties是这样配置的workers.tomcat_home=D:\Tomcat6 #让mod_jk模块知道Tomcat
workers.java_home=C:\Program Files\Java\jdk1.6.0_02 #让mod_jk模块知道j2sdk
ps=\ #指定文件路径分割符
worker.list=worker1
worker.worker1.port=8888 #工作端口,若没占用则不用修改
worker.worker1.host=localhost #Tomcat服务器的地址
worker.worker1.type=ajp13 #类型
worker.worker1.lbfactor=1 #负载平衡因数
这个启动都没问题,且能正确解析PHP页面,但是加载jsp页面的时候会出现502错误提示
Bad Gateway
The proxy server received an invalid response from an upstream server.
查找对应mod_jk.log里面的日志
有如下错误信息
[Tue Jul 01 11:14:47.593 2008] [2924:1888] [debug] jk_ajp_common.c (1395): (worker1) request body to send 0 - request body to resend 0
[Tue Jul 01 11:14:49.828 2008] [2924:1060] [error] jk_ajp_common.c (1004): (worker1) can't receive the response message from tomcat, tomcat (127.0.0.1:8888) has forced a connection close for socket 1132
[Tue Jul 01 11:14:49.828 2008] [2924:1060] [error] jk_ajp_common.c (1766): (worker1) Tomcat is down or refused connection. No response has been sent to the client (yet)
[Tue Jul 01 11:14:49.828 2008] [2924:1060] [info] jk_ajp_common.c (2186): (worker1) sending request to tomcat failed (recoverable), (attempt=2)
[Tue Jul 01 11:14:49.828 2008] [2924:1060] [error] jk_ajp_common.c (2204): (worker1) Connecting to tomcat failed. Tomcat is probably not started or is listening on the wrong port
[Tue Jul 01 11:14:49.828 2008] [2924:1060] [debug] jk_ajp_common.c (691): (worker1) resetting endpoint with sd = 4294967295 (socket shutdown)
[Tue Jul 01 11:14:49.828 2008] [2924:1060] [debug] jk_ajp_common.c (2522): recycling connection pool slot=1 for worker worker1
[Tue Jul 01 11:14:49.828 2008] [2924:1060] [info] mod_jk.c (2364): Service error=0 for worker=worker1
[Tue Jul 01 11:15:08.109 2008] [2924:1888] [error] jk_ajp_common.c (1004): (worker1) can't receive the response message from tomcat, tomcat (127.0.0.1:8888) has forced a connection close for socket 1088
[Tue Jul 01 11:15:08.109 2008] [2924:1888] [error] jk_ajp_common.c (1766): (worker1) Tomcat is down or refused connection. No response has been sent to the client (yet)
[Tue Jul 01 11:15:08.109 2008] [2924:1888] [info] jk_ajp_common.c (2186): (worker1) sending request to tomcat failed (recoverable), (attempt=2)
[Tue Jul 01 11:15:08.109 2008] [2924:1888] [error] jk_ajp_common.c (2204): (worker1) Connecting to tomcat failed. Tomcat is probably not started or is listening on the wrong port
[Tue Jul 01 11:15:08.109 2008] [2924:1888] [debug] jk_ajp_common.c (691): (worker1) resetting endpoint with sd = 4294967295 (socket shutdown)
[Tue Jul 01 11:15:08.109 2008] [2924:1888] [debug] jk_ajp_common.c (2522): recycling connection pool slot=0 for worker worker1
[Tue Jul 01 11:15:08.109 2008] [2924:1888] [info] mod_jk.c (2364): Service error=0 for worker=worker1不知道这个问题怎么解决,是我的端口配错了吗?望有经验者帮个忙 谢谢各位!~
我的apache服务器监听端口是9999
apache的 httpd.conf 部分配置如下
ServerRoot "D:/apache"
Listen 9999
#添加PHP解析模块 对所有以PHP结尾的文件使用PHP解析引擎解析
LoadModule php5_module "d:/php5/php5apache2_2.dll "
AddType application/x-httpd-php .php # Using mod_jk.so to redirect dynamic calls to Tomcat
LoadModule jk_module modules\mod_jk.so
JkWorkersFile "conf\workers.properties"
JkLogFile "logs\mod_jk.log"
JkLogLevel debug
JkMount /*.jsp worker1
JkMount /jspapp/* worker1
workers.properties是这样配置的workers.tomcat_home=D:\Tomcat6 #让mod_jk模块知道Tomcat
workers.java_home=C:\Program Files\Java\jdk1.6.0_02 #让mod_jk模块知道j2sdk
ps=\ #指定文件路径分割符
worker.list=worker1
worker.worker1.port=8888 #工作端口,若没占用则不用修改
worker.worker1.host=localhost #Tomcat服务器的地址
worker.worker1.type=ajp13 #类型
worker.worker1.lbfactor=1 #负载平衡因数
这个启动都没问题,且能正确解析PHP页面,但是加载jsp页面的时候会出现502错误提示
Bad Gateway
The proxy server received an invalid response from an upstream server.
查找对应mod_jk.log里面的日志
有如下错误信息
[Tue Jul 01 11:14:47.593 2008] [2924:1888] [debug] jk_ajp_common.c (1395): (worker1) request body to send 0 - request body to resend 0
[Tue Jul 01 11:14:49.828 2008] [2924:1060] [error] jk_ajp_common.c (1004): (worker1) can't receive the response message from tomcat, tomcat (127.0.0.1:8888) has forced a connection close for socket 1132
[Tue Jul 01 11:14:49.828 2008] [2924:1060] [error] jk_ajp_common.c (1766): (worker1) Tomcat is down or refused connection. No response has been sent to the client (yet)
[Tue Jul 01 11:14:49.828 2008] [2924:1060] [info] jk_ajp_common.c (2186): (worker1) sending request to tomcat failed (recoverable), (attempt=2)
[Tue Jul 01 11:14:49.828 2008] [2924:1060] [error] jk_ajp_common.c (2204): (worker1) Connecting to tomcat failed. Tomcat is probably not started or is listening on the wrong port
[Tue Jul 01 11:14:49.828 2008] [2924:1060] [debug] jk_ajp_common.c (691): (worker1) resetting endpoint with sd = 4294967295 (socket shutdown)
[Tue Jul 01 11:14:49.828 2008] [2924:1060] [debug] jk_ajp_common.c (2522): recycling connection pool slot=1 for worker worker1
[Tue Jul 01 11:14:49.828 2008] [2924:1060] [info] mod_jk.c (2364): Service error=0 for worker=worker1
[Tue Jul 01 11:15:08.109 2008] [2924:1888] [error] jk_ajp_common.c (1004): (worker1) can't receive the response message from tomcat, tomcat (127.0.0.1:8888) has forced a connection close for socket 1088
[Tue Jul 01 11:15:08.109 2008] [2924:1888] [error] jk_ajp_common.c (1766): (worker1) Tomcat is down or refused connection. No response has been sent to the client (yet)
[Tue Jul 01 11:15:08.109 2008] [2924:1888] [info] jk_ajp_common.c (2186): (worker1) sending request to tomcat failed (recoverable), (attempt=2)
[Tue Jul 01 11:15:08.109 2008] [2924:1888] [error] jk_ajp_common.c (2204): (worker1) Connecting to tomcat failed. Tomcat is probably not started or is listening on the wrong port
[Tue Jul 01 11:15:08.109 2008] [2924:1888] [debug] jk_ajp_common.c (691): (worker1) resetting endpoint with sd = 4294967295 (socket shutdown)
[Tue Jul 01 11:15:08.109 2008] [2924:1888] [debug] jk_ajp_common.c (2522): recycling connection pool slot=0 for worker worker1
[Tue Jul 01 11:15:08.109 2008] [2924:1888] [info] mod_jk.c (2364): Service error=0 for worker=worker1不知道这个问题怎么解决,是我的端口配错了吗?望有经验者帮个忙 谢谢各位!~
楼主【maodie007】截止到2008-07-01 11:25:02的历史汇总数据(不包括此帖):
发帖数:64 发帖分:1435
结贴数:63 结贴分:1405
未结数:1 未结分:30
结贴率:98.44 % 结分率:97.91 %
值得尊敬
我机器上只有一个猫哈 tomcat处理jsp 还有一个php5 他来处理php 他们都是独立的,应该他们之间没冲突吧
这行不对
worker.worker1.port=8009
出现404错误
http://localhost:9999/jspapp/123.jsp
123.jsp 是测试jsp
这个怎么解释呢? 谢谢
JkWorkersFile conf/workers.properties
JkLogFile logs/mod_jk2.log
JkLogLevel error
#日志有四种级别,设为error即可
JkMount /*/servlet/* ajp13
#对于处在servelet路径中的文件全部用tomcat响应
JkMount /*.jsp ajp13
JkMount /*.do ajp13
#响应以jsp和do为后缀的请求
AddType application/x-jsp .jsp
</IfModule>
workers.properties的配置workers.tomcat_home=D:\Tomcat6
workers.java_home=D:\Java\jdk1.6.0_06
worker.list=ajp13
#这里和前面httpd.conf中设置的请求jsp响应处理一样
worker.ajp13.port=8009
#注意,端口监听的是ajp协议的端口,tomcat默认设置的是8009,你要保证是这个
worker.ajp13.host=localhost
worker.ajp13.type=ajp13
worker.ajp13.lbfactor=1
worker.ajp13.sticky_session=true
worker.ajp13.sticky_session_force=true
你这样再试一试,还有需要指出的是,对于JSP的请求,jsp文件路径是由tomcat的server.xml定义的
比如,你的http.conf定义:
DocumentRoot "D:/apache/htdocs"
但是你的server.xml没有更改过.那么jsp文件在 "D:/tomcat/webapps"中才能访问到,而非在"D:/apache/htdocs"中