我已经处理这个问题一整天了,但仍然无法弄清楚。 我在一台机器上安装了 Zabbix,我想在另一台机器上监控 Apache 服务器。 我已经完成了文档中描述的所有步骤:http://www.zabbix.com/wiki/templates/apache 但我仍然没有在 Apache 模板中得到任何数据。在查看Apache服务器上的日志时,我可以在access.log中看到:
IPADDR - - [16/Jul/2012:13:29:08 +0000] "GET /server-status?auto HTTP/1.0" 404 13826 "-" "Python-urllib/1.17"
我认为这可能与虚拟服务器和我在那台机器上的其他站点有关,但我无法弄清楚,文档中没有提到任何内容......
Apache 检查并不像您想象的那么聪明。
Zabbix 可以与你的 apache 服务器通信吗?使用“正常运行时间”等简单内容将其链接到模板,并验证它确实获取数据。
接下来,验证没有任何防火墙规则阻止 zabbix 服务器与您的 Web 服务器通信。你能毫无问题地从 zabbix 主机卷曲你的主页吗?
apache 检查是主动检查吗?如果是这样,您需要确保在 /etc/zabbix/zabbix-agentd.conf 文件中启用主动检查,并且conf中的“主机名”是唯一的并且与zabbix服务器中的主机名正确匹配。
如果失败,请将 /etc/zabbix-agentd.conf 中的 DebugLevel 更改为 4 并跟踪 zabbix 日志。看看是否有任何检查有问题。
这是一个 apache 配置问题,如果
/server-status
产生 404 错误,zabbix 将无法执行任何操作。
也许
<Location /server-status>...</Location>
指令不在 apache 配置中的正确位置。
尝试将其移至
<VirtualHost>
路由到的特定虚拟服务器的 GET /server-status
部分。
还要确保mod_status已启用。