Home >Database >Mysql Tutorial >How to restrict access to a certain IP in php
In the process of setting the access permissions for LAN shared files, sometimes we will be in need of shared file management Security management and prohibit a certain IP address from accessing LAN shared files or a certain computer from accessing the server. shared documents. This aspect can be achieved by setting user access permissions for shared folders. For example, we can prohibit a user from accessing shared folders, but it is possible that others will reveal users with permissions to access shared files to visitors, allowing visitors to take advantage of Other accounts can also access shared files. So, in this case, we can prevent the specified computer from accessing the shared folder through the following methods.
This article mainly introduces the method of restricting IP access in PHP, involving PHP's related operation skills such as obtaining, parsing, traversing, and judging client IPs. Friends in need can refer to it
The example in this article describes the method of restricting IP access in PHP. Share it with everyone for your reference, the details are as follows:
//获取客户端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(); } }
The above is the detailed content of How to restrict access to a certain IP in php. For more information, please follow other related articles on the PHP Chinese website!