我将每台服务器与本地主机放在同一台机器上。我在其他 Windows Server 2008 中安装了相同的配置并执行相同的操作。
但是在我的笔记本电脑中,我安装了相同的并且工作正常。仅在 Windows 服务器中不起作用。
我做了这些步骤:
1. 安装 Apache + 2 具有不同端口、http、shutdown 和 AJP 端口的 Tomcat。
2.将mod_jk放入APACHE_HOME/modules
3. 将文件workers.properties 放入APACHE_HOME/conf 如下:
workers.tomcat_home=C:\Servers2\t3
workers.java_home=C:\Program Files\Java\jdk1.7.0_51
worker.list=balancer
#Tomcat 1
worker.worker1.port=9202
worker.worker1.host=localhost
worker.worker1.type=ajp13
worker.worker1.lbfactor=1
#Tomcat 2
worker.worker2.port=9205
worker.worker2.host=localhost
worker.worker2.type=ajp13
worker.worker2.lbfactor=1
worker.balancer.type=lb
worker.balancer.balance_workers=worker1,worker2
worker.balancer.method=B
worker.balancer.sticky_session=true
4.在APACHE_HOME/conf/http中添加这个:
LoadModule jk_module modules/mod_jk.so
JkWorkersFile C:\Servers2\apache\conf\workers.properties
JkMount /* balancer
5.在每个TOMCAT_HOME/conf/server中添加
Engine name="Catalina" defaultHost="localhost" jvmRoute="worker2"
这应该可以工作,我不知道我的笔记本电脑没有问题,当我在 Windows Server 中安装它时不工作。
我尝试关闭防火墙,添加入站和出站新规则,但没有。
没错,我可以访问我的 Tomcat 端口,但是当我访问 Apache 端口时,出现 502 和 503 错误,并且在日志中有这个。
[Thu Feb 13 17:38:04.856 2014] [3868:2996] [info]
ajp_connection_tcp_get_message::jk_ajp_common.c (1259): (worker2)
can't receive the response header message from tomcat, tomcat
(127.0.0.1:9205) has forced a connection close for socket 308 [Thu Feb
13 17:38:04.856 2014] [3868:2996] [error]
ajp_get_reply::jk_ajp_common.c (2126): (worker2) Tomcat is down or
refused connection. No response has been sent to the client (yet) [Thu
Feb 13 17:38:04.856 2014] [3868:2996] [info]
ajp_service::jk_ajp_common.c (2623): (worker2) sending request to
tomcat failed (recoverable), (attempt=2) [Thu Feb 13 17:38:04.856
2014] [3868:2996] [error] ajp_service::jk_ajp_common.c (2643):
(worker2) connecting to tomcat failed. [Thu Feb 13 17:38:04.856 2014]
[3868:2996] [info] service::jk_lb_worker.c (1478): service failed,
worker worker2 is in error state [Thu Feb 13 17:38:04.856 2014]
[3868:2996] [info] service::jk_lb_worker.c (1558): All tomcat
instances are busy or in error state [Thu Feb 13 17:38:04.856 2014]
[3868:2996] [error] service::jk_lb_worker.c (1563): All tomcat
instances failed, no more workers left [Thu Feb 13 17:38:04.856 2014]
[3868:2996] [info] jk_handler::mod_jk.c (2788): Service error=0 for
worker=balancer