Heim > Datenbank > MySQL-Tutorial > Hauptteil

So beschränken Sie den Zugriff auf eine bestimmte IP in PHP

怪我咯
Freigeben: 2017-07-11 16:39:54
Original
2858 Leute haben es durchsucht

Beim Festlegen von Zugriffsberechtigungen für gemeinsam genutzte LAN-Dateien müssen wir manchmal die Sicherheitsverwaltung für freigegebene Dateien verwalten und einer bestimmten IP-Adresse den Zugriff auf gemeinsam genutzte LAN-Dateien oder einem bestimmten Computer den Zugriff auf den Server verbieten . Dateien teilen. Dieser Aspekt kann durch das Festlegen von Benutzerzugriffsberechtigungen für freigegebene Ordner erreicht werden. Wir können beispielsweise einem Benutzer den Zugriff auf freigegebene Ordner verbieten, es ist jedoch möglich, dass andere Benutzer mit Berechtigungen zum Zugriff auf freigegebene Dateien den Besuchern offenbaren, sodass Besucher davon profitieren können Andere Konten können ebenfalls auf freigegebene Dateien zugreifen. In diesem Fall können wir mit den folgenden Methoden verhindern, dass der angegebene Computer auf den freigegebenen Ordner zugreift.

In diesem Artikel wird hauptsächlich die Methode zum Einschränken des IP-Zugriffs in PHP vorgestellt, wobei PHP-bezogene Betriebsfähigkeiten wie das Abrufen, Parsen, Durchlaufen und Beurteilen von Client-IPs einbezogen werden. Freunde in Not können sich darauf beziehen

Das Beispiel in diesem Artikel beschreibt die Methode zur Einschränkung des IP-Zugriffs in PHP. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:

//获取客户端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参数拆分成数组
if(!in_array($ip,$ALLOWED_IP)) {
  $bl=false;
  foreach ($ALLOWED_IP as $val){
    if(strpos($val,'*')!==false){
      //发现有*号替代符
      $arr=array();
      $arr=explode('.', $val);
      $bl=true;
      //用于记录循环检测中是否有匹配成功的
      for ($i=0;$i<4;$i++){
        if($arr[$i]!=&#39;*&#39;){
          //不等于* 就要进来检测,如果为*符号替代符就不检查
          if($arr[$i]!=$check_ip_arr[$i]){
            $bl=false;
            break;
            //终止检查本个ip 继续检查下一个ip
          }
        }
      }
      //end for
      if($bl){
        //如果是true则终止匹配
        break;
      }
    }
  }
  //end foreach
  if(!$bl){
    $return=array(
       &#39;status&#39;=>2,
       &#39;msg&#39;=>&#39;该IP无权限访问&#39;,
       &#39;data&#39;=>$ip
       );
    echo json_encode($return);
    exit();
  }
}
Nach dem Login kopieren


Das obige ist der detaillierte Inhalt vonSo beschränken Sie den Zugriff auf eine bestimmte IP in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage