zatree 플러그 인 최적화: HTTP Basic Authorization 인증 지원 zabbix API 방문

zatree 는 모니터링 소프트웨어 zabbix 의 플러그 인 입 니 다. 주요 기능 은 host group 의 트 리 디 스 플레이 와 item 에서 키워드 조회 와 데이터 정렬 을 지정 하 는 것 입 니 다.
zatree 프로젝트 주소https://github.com/spide4k/zatree, 설치 방법 은 다른 버 전 디 렉 터 리 에 들 어가 readme 를 봅 니 다.
   최근 에 문제 가 발생 했 습 니 다. zabbix 의 웹 에서 http 기본 인증 방식 을 사 용 했 을 때 zatree 플러그 인 은 zabbix 의 api 를 정상적으로 호출 하지 못 해서 오류 가 발생 했 습 니 다.
오류 정보 보기 방법: php 의 디 스 플레이 오 류 를 엽 니 다.
# vi /etc/php.ini
display_errors = On

    웹 서버 를 다시 시작 합 니 다.
wKiom1PRzTaATc6qAAChzbh5j_U802.jpg
    Zatree 단 추 를 누 르 면 페이지 에서 오류 메 시 지 를 볼 수 있 습 니 다.
wKioL1PRzl-C51W6AAL4xe5OUp4649.jpg
    해결 방법 은 다음 과 같다. 여 기 는 zatree 의 zabbix - 2.2. x 버 전 을 수정 하고 방법 은 zabbix - 2.0. x 버 전에 도 적합 하 다.
    zatree 디 렉 터 리 에 들 어가 다음 네 개의 파일 을 수정 합 니 다.
    단계 1. zabbix 수정config.php
HTTP Basic Authorization 인증 사용자 이름과 비밀번호 인 자 를 추가 합 니 다.HTTP Basic Authorization 인증 이 설정 되 어 있 지 않 으 면 httpuser 와 httppassword 값 이 비어 있 으 면 됩 니 다.
<?php 
global $zabbix_api_config;

$zabbix_api_config=array(
 'api_url'=>'api_jsonrpc.php',
 'http_user'=>'xxxxx',
 'http_password'=>'xxxxx',
 'user'=>'Admin',
 'passowrd'=>'xxxxx',
 'graph_url'=>'zabbix_chart.php',
);

?>

    단계 2. zabbix 수정ajax. php 33 번 째 줄, HTTP 인증 이 있 을 때 $url 추가http。
        $url_http = dirname(dirname('http://' . $_SERVER['HTTP_HOST'] . $_SERVER["REQUEST_URI"]));

다음으로 변경:
        if (!empty($zabbix_api_config['http_user']) && !empty($zabbix_api_config['http_password'])) {
                $url_http = dirname(dirname('http://' . trim($zabbix_api_config['http_user']) . ':' . trim($zabbix_api_config['http_password']) . '@' . $_SERVER['HTTP_HOST'] . $_SERVER["REQUEST_URI"]));
        } else {
                $url_http = dirname(dirname('http://' . $_SERVER['HTTP_HOST'] . $_SERVER["REQUEST_URI"]));
        }

    단계 3. graph. php 제1 41 줄 을 수정 하고 HTTP 인증 이 있 을 때 $url 을 추가 합 니 다.http。
        $url_http = dirname(dirname('http://' . $_SERVER['HTTP_HOST'] . $_SERVER["REQUEST_URI"]));

다음으로 변경:
        if (!empty($zabbix_api_config['http_user']) && !empty($zabbix_api_config['http_password'])) {
                $url_http = dirname(dirname('http://' . trim($zabbix_api_config['http_user']) . ':' . trim($zabbix_api_config['http_password']) . '@' . $_SERVER['HTTP_HOST'] . $_SERVER["REQUEST_URI"]));
        } else {
                $url_http = dirname(dirname('http://' . $_SERVER['HTTP_HOST'] . $_SERVER["REQUEST_URI"]));
        }

    STEP 4 、 수정 biggraph. php 88 번 째 줄, HTTP 인증 이 있 을 때 $url 추가http。
        $url_http = dirname(dirname('http://' . $_SERVER['HTTP_HOST'] . $_SERVER["REQUEST_URI"]));

다음으로 변경:
        if (!empty($zabbix_api_config['http_user']) && !empty($zabbix_api_config['http_password'])) {
                $url_http = dirname(dirname('http://' . trim($zabbix_api_config['http_user']) . ':' . trim($zabbix_api_config['http_password']) . '@' . $_SERVER['HTTP_HOST'] . $_SERVER["REQUEST_URI"]));
        } else {
                $url_http = dirname(dirname('http://' . $_SERVER['HTTP_HOST'] . $_SERVER["REQUEST_URI"]));
        }

링크 주소:https://github.com/spide4k/zatree/pull/2

좋은 웹페이지 즐겨찾기