我刚刚完成了 Tomcat 的一个相当默认的配置。我的 Apache 配置是预先存在的,并且在 tomcat 之后仍然没有问题。我正在使用 mod_jk(如果我说得正确的话)在 Apache 和 Tomcat 之间进行交互,并为我的工作人员设置我的配置文件等。
我把我的测试文件(简单来说:http://tomcat.apache.org/tomcat-4.1-doc/appdev/sample/web/hello.jsp)到我的tomcat/webapps/
目录中,然后通过http://localhost/jsptest/hello.jsp。从这里 Apache 返回502 Bad Gateway
响应。
我通过 Apache 日志确认了这一点,但除此之外,我不知道如何诊断问题。我猜想 502 是因为 Tomcat 没有响应。我想确认 Tomcat 是否收到了请求,但找不到日志文件。
此时,我以为我的安装已经完成,所以不知道接下来该怎么做。任何意见都将不胜感激。
编辑: catalina.out
,,,manager.log
等localhost.log
在我提出请求时没有记录任何数据。
编辑:慢慢弄清楚配置。当我发出请求时,mod_jk.log 中会出现以下三行:
[Tue Jun 01 17:34:26 2010] [4207:3086195296] [error] ajp_connection_tcp_get_message::jk_ajp_common.c (1252): wrong message format 0x3c21 from 127.0.0.1:8080
[Tue Jun 01 17:34:26 2010] [4207:3086195296] [error] ajp_get_reply::jk_ajp_common.c (2055): (worker) Tomcat is down or refused connection. No response has been sent to the client (yet)
[Tue Jun 01 17:34:26 2010] [4207:3086195296] [error] ajp_service::jk_ajp_common.c (2559): (worker) connecting to tomcat failed.
编辑:将 中的端口workers.properties
从更改8080
为8009
。现在mod_jk.log
显示以下内容:
[Tue Jun 01 17:54:55 2010] worker localhost 0.003423
因此 Tomcat 收到了请求,但是尽管我添加了hello.jsp
我的tomcat/webapps/
和apache/html/jsptest/
目录以覆盖所有基础,但还是返回了 404(来自 Tomcat)。也许我误解了别名方法?不确定它为什么找不到存在于两个最合乎逻辑的位置的文件...
编辑:好吧,我直接自己解决了这个问题。我的端口在workers.properties中是错误的。修复这个问题并看到Tomcat的404后,我意识到配置正在运行,但找不到文件。我没有意识到目录jsptest
需要位于tomcat/webapps/jsptest/
。现在一切正常……谢谢你的迁就。希望这对某人有帮助。
答案1
将端口从默认更改8080
为8009
,并将我的jsptest
目录添加到,tomcat/webapps/
以便它按照JkMount /jsptest/*.jsp worker
指令工作。