提前预祝2022新年快乐
顺道放上我自己写的检测qiang的代码。准确率跟你的ip列表有关。如果列表好,准确率高达95%+.
必须放在国内VPS,或者虚拟主机上并且要支持PHP,或者你自己改改。
- //被墙IP列表
- function iplist($l=”){
- //国外没有被墙IP列表
- //示例列表乱写的
- $list=[
- ‘23.224.9.226’,
- ‘23.224.9.227’,
- ‘23.224.9.228’,
- ];
-
- return $list[rand(0,count($list)-1)];
-
-
- }
- //悲情监测
- function wall($site){
- unset($ch,$ssl);
- $ch = curl_init();
- $iplist=iplist();
- curl_setopt($ch, CURLOPT_URL, "http://$site");
- curl_setopt($ch, CURLOPT_RESOLVE, ["$site:80:".$iplist]);
- curl_setopt($ch, CURLOPT_HEADER, true);
- curl_setopt($ch, CURLOPT_TIMEOUT, 10);
- curl_setopt($ch, CURLOPT_USERAGENT, ‘Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0’);
- curl_setopt($ch, CURLOPT_DNS_USE_GLOBAL_CACHE,false);
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //如果把这行注释掉的话,就会直接输出
- $result=curl_exec($ch);
- $headers = curl_getinfo($ch);
- curl_close($ch);
- //检测content_type里的数值
- if(!isset($headers[‘content_type’]) OR $headers[‘header_size’]==0){
- return false;//被墙
- }else{
- return true;//正常
- }
- }
-
-
- //栗子
- $wall=wall("google.com");
-
- if($wall){
-
- echo ‘在正常不过了’;
- }else{
- echo ‘有点小问题,好像不能访问’;
- }
复制代码
|