×

php禁止ip段访问

php禁止ip段访问(phpstudy403禁止访问)

admin admin 发表于2023-04-01 05:07:09 浏览64 评论0

抢沙发发表评论

本文目录一览:

php禁止北京段IP访问 我想让所有北京网段的IP都不能访问我的网站 希望说的详细点

这个东西你应该在服务器上做吧,在APCACHE上弄就可以了,在上面挂个IP段分布的东西,只要是符合北京地区的就直接返回404就可以了,PHP做的话也可能,不过比较麻烦。

你先去下一个ECSHOP,我记得里面有个.dll(好像是dll)文件,这个东西是一个IP验证库,传进去IP地址就能返回地区,这样你就能验证是否是北京了,至于不能访问你网站不知道是怎么个不能访问,如果是不想让他看见就直接返回页面404。

PHP禁止北京IP段访问,代码怎么写呢?

首先你得收集所有代理提供商所使用的ip

然后开始编写虚假页面

或者你可以慢慢来,收集到一个就添加一个到“黑名单”

不可能的任务,能做到的话,只能说他很牛叉!

PHPCMS如何禁止IP访问网站

禁止IP其实没什么用。如果用户是拨号上网。每次重启一下猫和路由。IP就变了。当然这种在一定程度上是可以起作用的。最好是IP和账号一起设置成禁止。IP禁止访问的方法。获取用户请求包头部。头部会包含对方的IP。获取它并判断。具体怎么获取头部里信息。百度一下。很多。-php禁止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提交表单的代码

我们只要在feedback.php中添加下面的代码进行判断就可以了。

注意:下边只是一个PHP限制IP的实例代码,如果您打算应用到CMS中,请自行修改,或者如果您正在使用DEDECMS,可以联系本站。

复制代码

代码如下:

?php

//加IP访问限制

if(getenv('HTTP_CLIENT_IP')

strcasecmp(getenv('HTTP_CLIENT_IP'),

'unknown'))

{

$userip

=

getenv('HTTP_CLIENT_IP');

}

elseif(getenv('HTTP_X_FORWARDED_FOR')

strcasecmp(getenv('HTTP_X_FORWARDED_FOR'),

'unknown'))

{

$userip

=

getenv('HTTP_X_FORWARDED_FOR');

}

elseif(getenv('REMOTE_ADDR')

strcasecmp(getenv('REMOTE_ADDR'),

'unknown'))

{

$userip

=

getenv('REMOTE_ADDR');

}

elseif(isset($_SERVER['REMOTE_ADDR'])

$_SERVER['REMOTE_ADDR']

strcasecmp($_SERVER['REMOTE_ADDR'],

'unknown'))

{

$userip

=

$_SERVER['REMOTE_ADDR'];

}

//限制ip

if

($userip=='27.37.188.128'){

header("location:");//被禁止后跳转到脚本之家站

exit;

}

//限制ip段

$ip_arr

=

explode('.',

$userip);

#限制的ip段,假设是192.168.*.*

if

(!(($ip_arr[0]

==

'192'

$ip_arr[1]=='168')

)){

header("location:");//被禁止后跳转到脚本之家素材站

exit;

}else{

header("location:");//正常IP则直接访问脚本之家首页

exit;

}

?

限制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)){-php禁止ip段访问

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";

}

?