/** * 域名管理者权限验证 * * @return array */ private function verifyDomain() { $webscan_config = $this->webscan360_config; //print_r($webscan_config);exit; if(!empty($webscan_config)){ $site_url = $webscan_config['SITE_URL']; if(!empty($site_url)){ $site_url ="http://".str_replace("http://","",strtolower($site_url)); } } if(empty($site_url)){ $site_url = $_SERVER ['HTTP_HOST']; } $result = array ('infocode' => "no", 'msg' => "" ); $model = new webscan360_http( ); $ret = $model->http_request ( $this->webscan360_getkey_url, array ('host' => $site_url , 'mid'=>$webscan_config['MID'] ) ); if(empty($ret)){ return array ('infocode' => "601", 'msg' => "not http"); } //print_r($ret);exit; $httpcode = $ret ['httpcode']; $response = $ret ['response']; $response = json_decode ( $response, true ); $webscan360db = new Webscan360_db(); if (! empty ( $ret ) && ! empty ( $response ) && $httpcode == 200 && $response ['infocode'] == "111" && ! empty ( $response ['key'] )) { $key = $response ['key']; $res_key = $webscan360db->rec_getRow( array ('var' => 'key' ) ); if (! empty ( $res_key )) { $op_ret = $webscan360db->rec_update( array ('value' => $key ), array ('var' => 'key' ) ); } else { $op_ret = $webscan360db->rec_insert ( array ('var' => 'key', 'value' => $key ) ); } if ($op_ret) { $ret_verityDomain = $model->http_request ( $this->webscan360_verifydomain_url, array ('key' => $key, 'host' => $site_url, 'mid'=>$webscan_config['MID'] ) ); $httpcode_verityDomain = $ret_verityDomain ['httpcode']; $response_verityDomain = $ret_verityDomain ['response']; if (! empty ( $ret_verityDomain ) && ! empty ( $response_verityDomain ) && $httpcode_verityDomain == 200) { $response_verityDomain_array = json_decode ( $response_verityDomain, true ); $result = $response_verityDomain_array; } else { $result = array ('infocode' => "203", 'msg' => "not verify host from 360webscan", 'httpcode' => $httpcode_verityDomain,'response'=>$response_verityDomain ); } } else { $result = array ('infocode' => "202", 'msg' => "not insert key" ); } } else { if ($response['infocode'] == "300"||$response['infocode'] == "106") { $result = $response; } else { $result = array ('infocode' => "201", 'msg' => "not get key from 360webscan", 'httpcode' => $httpcode ,'response'=>$response); } } if (! empty ( $result )) { $webscan360db->rec_insert( array ('var' => 'log_verify', 'value' => json_encode ( $result ) ) ); } return $result; }