0

因此,这项技术的新手请保持温和。目的是使用 mod_jk 设置 Tomcat 负载平衡。我的设置如下(全部在一台机器上):

Win7 x64 Apache Httpd 2.2 Tomcat 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 "It works!"

添加到 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 的重定向不起作用?

在此先感谢巴拉特

4

1 回答 1

0

尝试这个:

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

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

JkMount [URL prefix] [Worker name]

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

于 2013-07-25T05:06:50.780 回答