我正在尝试解决使用 mod_proxy_ajp 连接 Apache-HTTPD 和 Tomcat 的问题。通过阅读我发现问题可能是 HTTPD 和 Tomcat 中的 worker 数量。所以我尝试在 Tomcat 中查找 worker 的定义,但找不到任何内容。会这样吗?Tomcat 可以在没有 worker.properties 文件的情况下工作吗?我检查了 Tomcat conf 中的导入,只是为了确保没有不同的文件名,但没有找到。我如何才能找出我的 Tomcat 设置的 worker 配置?有默认值吗?
我正在尝试解决的问题是,在某些情况下,Tomcat 停止响应 Apache - 在 Apache 日志中我看到许多错误,例如:
(70007)The timeout specified has expired: ajp_ilink_receive() can't receive header
ajp_read_header: ajp_ilink_receive failed
(120006)APR does not understand this error code: proxy: read response failed from 127.0.0.1:9005 (localhost)
因此我试图找出 Apache 是否比 Tomcat 拥有更多的工作程序。
我正在使用 Apache 2.2.15 和 Tomcat 7,通过 Redhat 机器上的 mod_proxy_ajp 连接。
有任何想法吗?
答案1
您是否已在 tomcat 配置中配置了供 mod_proxy_ajp 连接的连接器?我知道使用 mod_jk 时必须执行此操作。
<Connector port="45499" maxThreads="50" enableLookups="false" protocol="AJP/1.3" URIEncoding="UTF-8" />
我们做了类似上述的事情。