您好,登錄后才能下訂單哦!
這篇文章主要介紹php怎樣弄禁止ip訪問,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
php實現(xiàn)禁止ip訪問的方法:首先獲取客戶端ip,ip參數(shù)拆分成數(shù)組;然后記錄循環(huán)檢測中是否有匹配成功,如果為【*】符號替代符就不檢查,終止檢查本個ip。
php實現(xiàn)禁止ip訪問的方法:
//獲取客戶端ip if (getenv("HTTP_CLIENT_IP")) $ip = getenv("HTTP_CLIENT_IP"); else if(getenv("HTTP_X_FORWARDED_FOR")) $ip = getenv("HTTP_X_FORWARDED_FOR"); else if(getenv("REMOTE_ADDR")) $ip = getenv("REMOTE_ADDR"); else $ip = "Unknow"; $ALLOWED_IP=array('10.144.39.132'); //允許訪問的ip $check_ip_arr= explode('.',$ip); //ip參數(shù)拆分成數(shù)組 if(!in_array($ip,$ALLOWED_IP)) { $bl=false; foreach ($ALLOWED_IP as $val){ if(strpos($val,'*')!==false){ //發(fā)現(xiàn)有*號替代符 $arr=array(); $arr=explode('.', $val); $bl=true; //用于記錄循環(huán)檢測中是否有匹配成功的 for ($i=0;$i<4;$i++){ if($arr[$i]!='*'){ //不等于* 就要進來檢測,如果為*符號替代符就不檢查 if($arr[$i]!=$check_ip_arr[$i]){ $bl=false; break; //終止檢查本個ip 繼續(xù)檢查下一個ip } } } //end for if($bl){ //如果是true則終止匹配 break; } } } //end foreach if(!$bl){ $return=array( 'status'=>2, 'msg'=>'該IP無權(quán)限訪問', 'data'=>$ip ); echo json_encode($return); exit(); } }
以上是php怎樣弄禁止ip訪問的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道!
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。