ホームページ  >  記事  >  バックエンド開発  >  PHP は、指定された IP アドレスからのアクセスのみを許可するように IP アクセスを制限します

PHP は、指定された IP アドレスからのアクセスのみを許可するように IP アクセスを制限します

WBOY
WBOYオリジナル
2016-07-25 08:54:421895ブラウズ
  1. /**

  2. * アクセスされた IP が指定された許可された IP であるかどうかを確認します
  3. * ここに説明を入力します...
  4. */
  5. function check_ip(){
  6. $ALLOWED_IP=array('192.168.2.*','127.0.0.1','192.168 .2.49');
  7. $IP=getIP();
  8. $check_ip_arr=explode('.',$IP);// 検出対象の IP を配列に分割する
  9. #制限 IP
  10. if(!in_array($) IP, $ALLOWED_IP)) {
  11. foreach ($ALLOWED_IP as $val){
  12. if(strpos($val,'*')!==false){//* 置換記号が見つかりました
  13. $arr=array();/ /
  14. $arr=explode('.', $val);
  15. $bl=true;//ループ検出で一致が成功したかどうかを記録するために使用されます
  16. for($i=0;$i<4;$i++ ) {
  17. if($arr[$i]!='*'){//* と等しくない場合はチェックされます、* 記号置換の場合はチェックされません
  18. if($ arr[$i]!=$check_ip_arr[ $i]){
  19. $bl=false;
  20. Break;//この IP のチェックを停止し、次の IP のチェックを続行します
  21. }
  22. }
  23. }//end for
  24. if($ bl){// true の場合は、それを見つけます。 成功した一致がある場合は、 return
  25. die
  26. }
  27. }
  28. }//end foreach
  29. header('HTTP/1.1 403 Forbidden'); "アクセス禁止";
  30. die
  31. }
  32. } < ;/p>
  33. function getIP() {
  34. return isset($_SERVER["HTTP_X_FORWARDED_FOR"])?$ _server ["http_x_forwarded_for"]
  35. :( server ["http_client_ip"])?コード
  36. メソッド呼び出し: 必要なファイルに、IP アクセス制限の目的を達成するための呼び出し check_ip() を追加します。 この関数は、指定された IP のみがファイルにアクセスできるようにし、複数の IP に一致するように IP にワイルドカード文字 * を指定します。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。