Apache/Tomcat mod_jk 错误消息 61

Apache/Tomcat mod_jk 错误消息 61

我在 mod_jk.log 文件中看到了垃圾邮件,其中包含以下错误消息:jk_connect.c (593): 连接到 127.0.0.1:8009 失败 (errno=61)

Tomcat 运行正常,Apache 和 Tomcat 之间没有配置防火墙(它们都在同一台机器上运行),8009 上有一个监听器。连接器一次正常运行几天,然后开始使用上述消息向日志文件发送垃圾邮件,用于所有新连接。

一旦垃圾邮件开始,我发现恢复的唯一方法是先重新启动 Tomcat,然后重新启动 Apache。

造成此类问题的最可能原因是什么?

答案1

这可能有多种原因:

  • tomcat 没有运行
  • tomcat 正在运行,但未配置端口 8009 的连接器
  • tomcat 正在运行,但是 apache 和 tomcat 之间的防火墙不允许端口 8009 上的流量(在您的环境中不应该出现这种情况)
  • tomcat 正在运行,但未监听此 ip

答案2

就在本周,我在全新安装时遇到了完全相同的问题。我从一个 Tomcat 5.5 安装中复制了所有内容,文件一一对应,而 Tomcat 5.5 的运行完全符合预期,所以这确实是一个令人费解的情况。

因此我运行了 TCPView 并且看到 AJP 没有绑定在 TCP 的端口 8009 上(但它绑定在 TCPv6 上!wth...)

看起来 Tomcat 的更高版本,或者 isapi_redirect.dll 或 Tomcat5w.exe(Tomcat 服务)似乎是“TCPv6 感知的”,而这正是问题开始的地方。

好消息是,您可以将 server.xml 中的“地址”属性设置为 IPv4 地址,例如:

<Connector address="192.168.1.109" port="8080" ... 为您的网络服务和

<Connector address="192.168.1.109" port="8009" ... 用于 ajp/1.3 连接器

请注意,无论您将地址设置为何,请确保您的 worker.properties 文件具有相同的设置,例如:

worker.ajp13w.host=192.168.1.109

...看起来这就是全部内容了。

相关内容