답변:
check_http를 사용해 보았지만 웹 사이트가 오류 페이지로 리디렉션 되어도 성공합니다.
이것은로 해결할 수 있습니다 check_http --expect
. 다음은 check_http --help 의 설명서입니다 .
-e, --expect = STRING 쉼표로 구분 된 문자열 목록으로, 서버 응답의 첫 번째 (상태) 줄에 하나 이상이 예상됩니다 (기본값 : HTTP / 1). 지정된 경우 다른 모든 상태 줄 논리를 건너 뜁니다 ( 예 : 3xx, 4xx, 5xx 처리)
다음 예제는 200 OK HTTP 응답 코드에 대해 'OK'를 반환 하지만 302 리디렉션에 심각한 오류가 발생합니다.
host % check_http --expect=200
HTTP CRITICAL - Invalid HTTP response received from host: HTTP/1.0 301 OK
보안 웹 사이트 (SSL을 통한) 및 인증의 경우 check_http --ssl
및 --authorization
플래그 도 확인하십시오 .
-S, --ssl SSL을 통해 연결합니다. 포트 기본값은 443입니다
-a, --authorization = AUTH_PAIR 사용자 이름 : 기본 인증이있는 사이트의 암호
또는 실제로 시스템에 로그인하고 싶지는 않지만 해당 사용자 이름 / 암호가 보안 문제가 될 수 있으므로 페이지에 사용자 이름 / 암호가 필요한지 확인하고 싶을 수 있습니다. 이 경우 다음과 같은 것을 시도하십시오 / 401
'Unauthorized'또는 'Authorization Required'에 대한 HTTP 응답 코드 401
입니다. 필수적이고 나중에 텍스트 문자열은 선택 사항이며 여러 가지 중 하나를 말할 수 있으므로 Nagios에게 알려주십시오. 기대 401
합니다.
check_http --expect="401"
Cucumber-Nagios로보다 복잡한 검사 (행동 주도 개발 / 모니터링 정신)를 작성할 수 있습니다 .
check_http
플러그인은 지원하는-s string
특정 문자열 HTTP 응답을 볼 수 있습니다 옵션을 선택합니다. 성공시 페이지가 특정 문자열을 인쇄하는 경우 오류와 구별되도록 확인할 수 있습니다.