本文目录一览:
- 1、PHP中如何阻止某个IP频繁的发请求?
- 2、PHP让某个IP无法访问网站?
- 3、限制ip地址段访问的php代码
- 4、PHPCMS如何禁止IP访问网站
- 5、求一段PHP限制IP及IP段访问的代码,拜托了。。
- 6、php怎么禁止某ip或ip地址段访问
PHP中如何阻止某个IP频繁的发请求?
两个方法
一个是系统级的,也就是在系统里通过软件将这个ip屏蔽掉,这需要你有服务器的管理权限
第二个方法就是应用级的了
在你的程序里,加上ip访问模块,添加黑名单即可。
PHP让某个IP无法访问网站?
你写一个错误的php语句不就行了,这个IP就会收到一个500错误以及相应的出错页面
限制ip地址段访问的php代码
?php
$userip = $_SERVER['REMOTE_ADDR']; //获得用户ip
$userips = explode(".", $userip);//把获得的ip切开成数组
if(($userips[0]=195 $userips[0]=195)($userips[1]=163 $userips[1]=163)($userips[2]=079 $userips[2]=072)($userips[3]=255 $userips[3]=000)){
echo "您的ip不符!";
exit;
}else{
echo "通过验证!";
}
?
我的思路就是这样的
获得用户的IP 用"."分割成数组
再将 限制IP断 分别用"."分割成数组
然后判断用户IP是否在这个IP断内(分别判断四个元素是否在这个范围里)
……
下面是蓝色理想里找到的一个供你参考
——————————————————
?php
class IP{ //获取客户IP地址
function getIpAdr($ ip){
$ ip1=getenv("HTTP_X_FORWARDED_FOR");
$ ip2=getenv("HTTP_CLIENT_IP");
$ ip3=getenv("REMOTE_ADDR");
if($ ip1$ ip1!='unknow')
$ ip=$ ip1;
else if($ ip2$ ip2!='unknow')
$ ip=$ ip2;
else if($ ip3$ ip3!='unknow')
$ ip=$ ip3;
else
$ ip='127.0.0.1';
}
}
function get_netip($ myip){ //只留客户IP地址的前三位
$ temp=explode(".",$ myip);
$ netip.=$ temp[0];
$ netip.=".";
$ netip.=$ temp[1];
$ netip.=".";
$ netip.=$ temp[2];
return $ netip;
}
$ filename="test.ini"; //定义操作文件
$ ip_lib=file($ filename); //读取文件数据到数组中
$ allow=0;
$ IP=new IP;
$ thisip="";
$ IP-getIpAdr($ thisip);
$ thenetip=get_netip($ thisip);
for($ i=0;$ icount($ ip_lib);$ i++){
if(ereg($ thenetip,$ ip_lib[$ i])){
$ allow=1;
break;
}
}
if ($ allow==1)
{
echo "验证通过";
}
else {
echo "scriptlocation.href='Error.php';/script";
}
?
PHPCMS如何禁止IP访问网站
禁止IP其实没什么用。如果用户是拨号上网。每次重启一下猫和路由。IP就变了。当然这种在一定程度上是可以起作用的。最好是IP和账号一起设置成禁止。IP禁止访问的方法。获取用户请求包头部。头部会包含对方的IP。获取它并判断。具体怎么获取头部里信息。百度一下。很多。
求一段PHP限制IP及IP段访问的代码,拜托了。。
正确代码
function check_ip(){
$ALLOWED_IP=array('192.168.2.*','127.0.0.1','192.168.2.49');
$IP=getIP();
$check_ip_arr= explode('.',$IP);//要检测的ip拆分成数组
#限制IP
if(!in_array($IP,$ALLOWED_IP)) {
foreach ($ALLOWED_IP as $val){
if(strpos($val,'*')!==false){//发现有*号替代符
$arr=array();//
$arr=explode('.', $val);
$bl=true;//用于记录循环检测中是否有匹配成功的
for($i=0;$i4;$i++){
if($arr[$i]!='*'){//不等于* 就要进来检测,如果为*符号替代符就不检查
if($arr[$i]!=$check_ip_arr[$i]){
$bl=false;
break;//终止检查本个ip 继续检查下一个ip
php怎么禁止某ip或ip地址段访问
//禁用单个ip如下:
?php
//禁用ip地址
$ip=$_SERVER["REMOTE_ADDR"];
$ban=file_get_contents("ban.dat");
if(stripos($ban,$ip))
{
die("Your IP Address is:$ip,you're forbiden to view this page!");
}
echo "Your IP Address is:$ip,hello!";
?
//禁用ip段如下:
?php
//禁用ip地址
$ip=$_SERVER["REMOTE_ADDR"];
while($ip[count($ip-1)]!='.')$ip=substr($ip,1, -1); //整理出ip段
$ban=file_get_contents("ban.dat");
if(stripos($ban,$ip))
{
die("U're forbiden to view this page!");
}
echo "Hello!";
?