Maison >base de données >tutoriel mysql >Comment restreindre l'accès à une certaine IP en php
Dans le processus de définition des autorisations d'accès aux fichiers partagés LAN, nous devrons parfois gérer les fichiers partagés gestion de la sécurité et interdire à une certaine adresse IP d'accéder aux fichiers partagés LAN ou à un certain ordinateur d'accéder au serveur . Partagez des fichiers. Cet aspect peut être obtenu en définissant les autorisations d'accès des utilisateurs aux dossiers partagés. Par exemple, nous pouvons interdire à un utilisateur d'accéder aux dossiers partagés, mais il est possible que d'autres révèlent aux visiteurs les utilisateurs disposant des autorisations nécessaires pour accéder aux fichiers partagés, permettant ainsi aux visiteurs d'en profiter. d'autres comptes peuvent également accéder aux fichiers partagés. Ainsi, dans ce cas, nous pouvons empêcher l'ordinateur spécifié d'accéder au dossier partagé via les méthodes suivantes.
Cet article présente principalement la méthode de restriction de l'accès IP en PHP, impliquant les compétences opérationnelles associées de PHP telles que l'obtention, l'analyse, la traversée et l'évaluation des adresses IP des clients. Les amis dans le besoin peuvent s'y référer
. L'exemple de cet article décrit la méthode de restriction de l'accès IP en PHP. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :
//获取客户端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]!='*'){ //不等于* 就要进来检测,如果为*符号替代符就不检查 if($arr[$i]!=$check_ip_arr[$i]){ $bl=false; break; //终止检查本个ip 继续检查下一个ip } } } //end for if($bl){ //如果是true则终止匹配 break; } } } //end foreach if(!$bl){ $return=array( 'status'=>2, 'msg'=>'该IP无权限访问', 'data'=>$ip ); echo json_encode($return); exit(); } }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!