Google Safe Browsing > 그누보드5 팁자료실

그누보드5 팁자료실

Google Safe Browsing 정보

Google Safe Browsing

본문

<?php
 
/**
 * Defining constants for the CGI parameters of the HTTP GET Request
 * */
define ( 'API_KEY', "YOUR_API_KEY" ); //발급받은 API KEY 입력
define ( 'PROTOCOL_VER', '3.0' );
define ( 'CLIENT', 'checkURLapp' );
define ( 'APP_VER', '1.0' );
 
/**
 * Function for sending a HTTP GET Request
 * to the Google Safe Browsing Lookup API
 */
function get_data($url) {
        $ch = curl_init ();
        curl_setopt ( $ch, CURLOPT_URL, $url );
        curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, false );
        curl_setopt ( $ch, CURLOPT_SSL_VERIFYHOST, false );
        curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, true );
       
        $data = curl_exec ( $ch );
        $httpStatus = curl_getinfo ( $ch, CURLINFO_HTTP_CODE );
        curl_close ( $ch );
       
        return array (
                        'status' => $httpStatus,
                        'data' => $data
        );
}
 
/**
 * Function for analyzing and paring the
 * data received from the Google Safe Browsing Lookup API
 */
function send_response($input) {
        if (! empty ( $input )) {
                $urlToCheck = urlencode ( $input );
               
                $url = 'https://sb-ssl.google.com/safebrowsing/api/lookup?client=' . CLIENT . '&apikey=' . API_KEY . '&appver=' . APP_VER . '&pver=' . PROTOCOL_VER . '&url=' . $urlToCheck;
               
                $response = get_data ( $url );
               
                if ($response ['status'] == 204) {
                        return json_encode ( array (
                                        'status' => 204,
                                        'checkedUrl' => $urlToCheck,
                                        'message' => 'The website is not blacklisted and looks safe to use.'
                        ) );
                } elseif ($response ['status'] == 200) {
                        return json_encode ( array (
                                        'status' => 200,
                                        'checkedUrl' => $urlToCheck,
                                        'message' => 'The website is blacklisted as ' . $response ['data'] . '.'
                        ) );
                } else {
                        return json_encode ( array (
                                        'status' => 501,
                                        'checkedUrl' => $urlToCheck,
                                        'message' => 'Something went wrong on the server. Please try again.'
                        ) );
                }
        } else {
                return json_encode ( array (
                                'status' => 401,
                                'checkedUrl' => '',
                                'message' => 'Please enter URL.'
                ) );
        }
        ;
}
 
$checkMalware = send_response ('URL'); //검사할 URL 입력
$checkMalware = json_decode($checkMalware, true);
 
$malwareStatus = $checkMalware['status'];
 
echo $malwareStatus;
 
?>
추천
1

댓글 1개

전체 2,427 |RSS
그누보드5 팁자료실 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT