apache - 502 Bad Gateway...来自上游服务器的无效响应(apache 和 jboss)

标签 apache jboss mod-jk

我在一台机器上使用 apache 来向另一台机器上的 jboss 提供请求。当我启动 jboss 时,一切工作正常,并且能够访问 Web 应用程序,但几个小时后,我最终开始收到“代理服务器从上游服务器收到无效响应”错误。如果我重新启动jboss,那么一切都会再次正常,但几个小时后我遇到了同样的问题......

有人知道是什么原因导致这个问题吗?我现在无法访问 apache 日志(几个小时后应该会),但它似乎是 jboss 的问题,因为重新启动它是临时修复。

我正在使用 jboss4.2.3 和 apache 1.3 以及 mod_jk。我在 jboss 日志中没有发现任何错误,并且我尝试访问的应用程序没有执行任何需要很长时间的操作。主页只是一个简单的登录页面。我打开了端口 8009 和 8080,用于应用程序服务器和 Web 服务器之间的通信。不知道哪里配置有问题。

最佳答案

在我看来,Apache 中的 mod_jk 与 JBoss 中的 AJP 连接器不同步。 AJP 协议(protocol)在 Web 服务器和应用程序服务器之间使用持久的、可重复使用的连接,如果连接两端的协议(protocol)配置不完全相同,最终连接一端的连接会失效,但另一端的连接也会失效。不断尝试使用它们。症状是 502 错误。

我的第一个建议是:除非需要,否则不要使用 mod_jk。要获得稳定的系统,配置非常复杂且困难。如果您不需要其性能或负载平衡功能,我建议改用 mod_proxy。它对于大多数应用程序来说都一样好,而且非常简单。

但是,如果您想坚持使用 mod_jk,您需要做的第一件事是确保您使用的是最新的 mod_jk 版本(当前为 1.2.28),因为旧版本非常难以配置。幸运的是,Apache 1.3 仍然支持 mod_jk。

接下来,检查 mod_jk 日志文件(使用 JkLogFile 指令配置)。如果您在出现问题时看到一堆与连接相关的错误,则需要调整连接两端的 jk 配置。最有可能的罪魁祸首是超时设置,因此read up about those here ,并确保两端都唱同一张赞美诗。

关于apache - 502 Bad Gateway...来自上游服务器的无效响应(apache 和 jboss),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1109241/

相关文章:

php - PHP 无法识别 openssl_encrypt

java - 如何在 apache POI 中的 HSSFCell 中添加图像?

java - 如何使用嵌入了WildFly 8.0.0的Arquillian?

apache - 在端口 80 上使用 mod_jk 的 httpd 和 Tomcat 测试失败

apache2 - glassfish + jk + 大文件/奇怪的响应

apache - 尝试分析 apache 核心转储时 dump_bt 不起作用

spring - 无法找到 XML 模式命名空间的 Spring NamespaceHandler [http ://cxf. apache.org/jaxws] - 包括 cxf-rt-frontend-jaxrs

java - WildFly 独立版无法运行

apache - 应用成功部署到Tomcat上,但是出现404错误

css - wordpress css 下载时出现无效的分块编码错误