PHP检测网站炸没炸 [index.html] <!DOCTYPE HTML> <html> - Assbbs
PHP检测网站炸没炸 index.html <!DOCTYPE HTML> <html> <head> <meta charset="utf-8" /> <meta name="viewport" content=&…
PHP检测网站炸没炸 index.html <!DOCTYPE HTML> <html> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no" /> <meta name="keywords" content="网站炸了没,炸了没,Crash" /> <meta name="description" content="网站炸了没,炸了没,Crash" /> <link rel="icon" href="data:," /> <title>网站炸了没?</title> </head> <body> <b>网站炸了没?</b><br /> <input id="url" /> <input type="button" value="瞅瞅" onclick="crash ;"> <div id="see"></div> <script> function crash { var url=document.getElementById & 39;url& 39; ; var see=document.getElementById & 39;see& 39; ; see.innerHTML=& 39;& 39;; if !url.value {return;}; var xhr=new XMLHttpRequest ; xhr.open & 39;GET& 39;,& 39;//proxy.example.com/proxy.php?url=& 39;+encodeURIComponent window.btoa url.value ,true ; xhr.onerror=function {alert & 39;查询服务器废了& 39; ;}; xhr.onreadystatechange=function {if this.readyState===4 && this.status===200 { var json=JSON.parse this.responseText ; if json.status==& 39;success& 39; {see.innerHTML=& 39;美滋滋……<br />IP:&nbsp;& 39;+json.primary ip+& 39;<br />Time:&nbsp;& 39;+json.total time+& 39;<br />& 39;;} else{see.innerHTML=& 39;悲剧了……& 39;;}; }}; xhr.send null ; }; </script> </body> </html> proxy.php //代理主机,公网可以自由访问 <?php function chk $url { $r=array ; $c=curl init $url ; curl setopt $c,CURLOPT TIMEOUT,10 ; curl setopt $c,CURLOPT SSL VERIFYPEER,0 ; curl setopt $c,CURLOPT SSL VERIFYHOST,0 ; curl setopt $c,CURLOPT RETURNTRANSFER,1 ; curl setopt $c,CURLOPT HEADER,0 ; curl setopt $c,CURLOPT NOBODY,0 ; $e=curl exec $c ; if curl errno $c {$e=& 39;{"status":"error"}& 39;;} curl close $c ; return $e; } header & 39;Access-Control-Allow-Origin: & 39; ; if empty $ GET & 39;url& 39; {echo & 39;{"status":"error"}& 39;;die;} echo chk & 39;https://touch.example.com/touch.php?url=& 39;.trim $ GET & 39;url& 39; ; ?> touch.php //放到国内主机,并将代理主机添加进白名单 <?php function chk $url { $r=array ; $c=curl init $url ; curl setopt $c,CURLOPT TIMEOUT,5 ; curl setopt $c,CURLOPT SSL VERIFYPEER,0 ; curl setopt $c,CURLOPT SSL VERIFYHOST,0 ; curl setopt $c,CURLOPT RETURNTRANSFER,1 ; curl setopt $c,CURLOPT HEADER,0 ; curl setopt $c,CURLOPT NOBODY,1 ; curl exec $c ; if curl errno $c {$r & 39;status& 39; =& 39;failed& 39;;return $r;} $i=curl getinfo $c ; curl close $c ; $r & 39;status& 39; =& 39;success& 39;; $r & 39;primary ip& 39; =isset $i & 39;primary ip& 39; ?$i & 39;primary ip& 39; :null; $r & 39;total time& 39; =isset $i & 39;total time& …