Tomcat使用mod_jk进行负载均衡

时间:2013-07-24 09:12:37

标签: apache tomcat mod-jk

这项技术的新手因此要温柔。目标是使用mod_jk设置Tomcat负载平衡。 我的设置如下(所有在一台机器上):

Win7 x64 Apache Httpd 2.2 雄猫6 mod_jk 1.2.37(对于httpd2.2.x) 2个Tomcat实例(同一台机器)

我已正确设置Tomcat,可以通过localhost:8080和localhost:8081访问webapps。 但是当我尝试通过Httpd(localhost / dept1或localhost / dept2)访问webapps时,我得到“404 Not Found”在此服务器上找不到请求的URL / dept1。 Httpd在通过URL访问时工作,http:// localhost“它可以工作!”

添加到httpd.conf(Apache2.2)的唯一行是:

LoadModule jk_module modules/mod_jk.so
JkWorkersFile C:/ApacheHTTPD/conf/workers.properties
JkLogFile C:/ApacheHTTPD/logs/mod_jk.log
JkLogLevel emerg
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
JkOptions +ForwardKeySize +ForwardURICompat +ForwardDirectories
JkRequestLogFormat "%w %V %T %p %q %r %v %U"
JkMount /%CATALINA_HOME%/webapps/dept1/* tomcatbase
JkMount /%CATALINA_HOME2%/webapps/dept2/* tomcat1

workers.properties文件包含:

worker.list=tomcatbase,tomcat1
worker.tomcatbase.type=ajp13
worker.tomcatbase.host=localhost
worker.tomcatbase.port=8009
worker.tomcat1.type=ajp13
worker.tomcat1.host=localhost
worker.tomcat1.port=8010

所有其他设置(Apache和2个Tomcat实例)都是默认设置。 现在,http:// localhost:8080 / dept1正常工作。那么从Apache到Tomcat的重定向是不起作用的呢?

提前致谢 巴拉斯

1 个答案:

答案 0 :(得分:0)

试试这个:

JkMount /dept1/* tomcatbase
JkMount /dept2/* tomcat1

JkMount指令的第一个参数是URL前缀,而不是本地路径。

JkMount [URL prefix] [Worker name]

有关详细信息,请参阅http://tomcat.apache.org/connectors-doc/webserver_howto/apache.html