求PHP封IP段

王朝知道·作者佚名  2009-08-17
窄屏简体版  字體: |||超大  
 
分類: 電腦/網絡 >> 程序設計 >> 其他編程語言
 
問題描述:

如题,我刚接触网络编程,请问如何用PHP来封某一段IP

我想了一个却只能封某个IP

就是在首页先getenv["remote_addr"]取得IP地址

然后建了一个黑名单表[放置要被封的IP]

比对如果这个IP在黑名单表中就跳转到一个错误页面不继续读取首页

我这样只能封特定的IP 而没办法封 类似 127.0.0.* 这样的IP段

用什么语句实现?具体怎么实现?

參考答案:

1、首先用explode()函数将访问者IP 111.222.333.444以"."为分隔符拆成一个二维数组

$UserIP=explode(".",111.222.333.444)之后,则数组$UserIP的内容为

$UserIP[0]="111"

$UserIP[1]="222"

$UserIP[2]="333"

$UserIP[4]="444"

2、然后用explode函数把你的黑名单IP拆成一个数组$BadIP,然后根据你要封锁的网段来进行比较,比如:

if ($UserIP[0]==$BadIP[0] && $UserIP[1]==$BadIP[1] && $UserIP[2]==$BadIP[2] && ) {

跳转错误页面

}

else {

读取首页

}

这就封掉了111.222.333.*这样的一个网段

小贴士:① 若网友所发内容与教科书相悖,请以教科书为准;② 若网友所发内容与科学常识、官方权威机构相悖,请以后者为准;③ 若网友所发内容不正确或者违背公序良俗,右下举报/纠错。
 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航