我们使用Nagios来监视我们的网站(以及其他一些东西)。出于某种奇怪的原因,当我testing出这个命令的时候
/usr/lib/nagios/plugins/check_http -H 'domainname.com'
返回的响应是HTTP/1.1 200 OK但是当我设置服务来做到这一点:
# Check that domain is running define service { hostgroup_name hostgroup service_description host site check_command check_httpname!domainname.com use generic-service notification_interval 1; set > 0 if you want to be renotified }
返回的响应是HTTP/1.1 503 Service Unavailable 。
有谁知道为什么会这样呢?
不知道为什么我不能添加评论,但是您可能想要在主机定义中validation您的地址和host_name。 我一直卡在命令行检查脚本工作的情况下,但GUI是告诉我别的东西。 通常这是地址字段中的拼写错误。
您必须编辑/usr/local/nagios/etc/objects/commands.cfg并将https结构“-I”更改为“-H”
这将告诉它查找主机名,而不是在服务器configuration的http_check块中指定的dip地址:/usr/local/nagios/etc/servers/yourserver.cfg
从:
# 'check_http' command definition define command{ command_name check_http command_line $USER1$/check_http -I $HOSTADDRESS$ $ARG1$ }
至:
# 'check_http' command definition define command{ command_name check_http command_line $USER1$/check_http -H $HOSTADDRESS$ $ARG1$ }