我们的Apache2实例似乎偶尔会在加载时停止响应SSL请求。
我们有一台运行Apache 2.2 w / OpenSSL的Windows Server 2003。它配置了mod_jk连接器版本1.2.32,它平衡了Tomcat 6的两个实例。
Apache2配置为接受:80上的请求,并使用mod_rewrite重定向到:443,这很好。 (这在以后很重要)
我们有一个外部进程,通常会调用通过mod_jk映射的URL。该过程配置不当,最初将其请求发送到http(:80),然后被重定向到https(:443),导致服务器出现双击。这意味着access.log将显示两个请求,一个具有302状态(从:80请求重定向),然后是200状态(ok:443请求)。
最终,access.log停止显示后续的“状态200”消息,并且仅显示302(重定向)。通过浏览器访问https URL也确认Apache没有响应。我们的Monitis警报说,“关键 - 无法建立SSL连接”。此外,我们的mod_jk.log在失败时停止记录请求。这里需要注意的是,Apache继续回复所有http请求,并在ssl请求失败的同时发送302重定向。
直接通过http访问两个tomcat实例,没有任何问题。
我们重新启动了Apache2服务,该服务立即解决了问题,并且事情再次开始正常运行。
在这个难题中有很多活动部分,我不确定罪魁祸首。我怀疑SSL可能存在问题,但我当时没有通过SSL测试非tomcat URL。它也可能与mod_jk相关。谢谢你的阅读。
答案 0 :(得分:0)
我强烈建议您抛弃mod_jk,转而支持 mod_ajp_proxy mod_proxy_ajp。它完全相同,但配置起来要简单得多;它是内置于Apache而不是Tomcat项目的副产品;当你需要它时,它可以与mod_proxy_balancer一起使用;它已经为我提供了完美的工作,包括SSL,已经有几个月了。