对于我们的环境,我们应该检查可用性Apache httpd服务器。 我们不想在documentRoot中为它创build和清空页面,我们也不能使用mod_status(安全原因)。
是否有任何选项来configurationApache来回答特定的URL总是HTTP 200? 喜欢:
<location /heart_beat.html> Return 200 </location>
Apache 2.2(mod_ssl,mod_proxy,虚拟主机)
显而易见的解决scheme是在您的configuration中创build一个别名,并将您的空状态页面放置在您的文档之外,这样就不会与您的CMS或网站pipe理员可能创build的URL冲突。
# Unlikely URL used by loadbalancer for polling Alias /sdfjkleruiwbns/dfasdfhasdfjkggfhjfgasqeuryuwerpvbbv/ /var/www/loadbalancer/
关于负载均衡器的轮询:
负载均衡器将定期轮询后端服务器。 调查结果将确定后端服务器是否健康,负载平衡器是否将请求发送给给定的服务器。
支持的最基本的监视是一个简单的TCP连接检查,以确定服务是否正在侦听连接。 通常情况下,testing不是100%可靠的,因为当实际应用程序没有响应时,听众仍然处于活动状态并不罕见。
更好地检查Web服务将检索一个实际的URL,即http://server.local/some/path/page.htm当该URL可以检索负载均衡器认为节点活跃。
而不是一个静态的HTMLdynamic健康页面更好,但这可能是更多的自定义,然后需要/支持。 如果一切正常,则以绿灯亮起,并返回HTTP状态200,否则以橙色或红灯发送HTTP状态503。 然后,运行状况页面通常会检查是否满足运行应用程序的所有必需条件,例如,它可以写入临时空间,连接到后端数据库,许可证有效,最大队列长度尚未达到等等等等。只要轮询健康页面当然不会导致有效的拒绝服务…
mod_alias可以返回一个空的页面204。
RedirectMatch 204 /heart_beat.html