免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1722 | 回复: 2
打印 上一主题 下一主题

想做一个ip管理程序,不知道如何实现 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2003-06-15 01:24 |只看该作者 |倒序浏览
初学php,对很多复杂的函数不清楚,主要想实现的功能是只有我允许的ip地址才能连接服务器。
不知道哪位大侠有经验呢?能否告知一二
QQ 1721920

论坛徽章:
0
2 [报告]
发表于 2003-06-15 10:28 |只看该作者

想做一个ip管理程序,不知道如何实现


  1. // --  获取客户端IP
  2. function get_client_ip() {
  3.   if (!empty($_SERVER["HTTP_CLIENT_IP"])) return $_SERVER["HTTP_CLIENT_IP"];
  4.   elseif (!empty($_SERVER["HTTP_X_FORWARDED_FOR"])) return $_SERVER["HTTP_X_FORWARDED_FOR"];
  5.   else return $_SERVER["REMOTE_ADDR"];
  6. }

  7. // --  判断是否为允许的IP段
  8. function detect_allowed_ip($ip_list) {
  9.   $ip_list = explode(",", $ip_list);
  10.   $client_ip_list = explode(".", $client_ip);
  11.   for ($i=0; $i<count($ip_list); $i++) {
  12.     $ip_list[$i] = trim($ip_list[$i]);
  13.     $temp_list = explode(".", $ip_list[$i]);
  14.     $pass_temp = TRUE;
  15.     for ($j=0; $j<count($temp_list); $j++) {
  16.       if ($temp_list != "*") {
  17.         if ($client_ip_list[$j] != $temp_list[$j]) {
  18.           $pass_temp = FALSE;
  19.           break;
  20.         }
  21.       }
  22.     }
  23.     if ($pass_temp) return TRUE;
  24.   }
  25.   return FALSE;
  26. }
复制代码


示例:

  1. // --  允许访问的IP地址列表
  2. $allowed_ips = "127.0.0.1, 192.168.0.*, 10.21.*.*, 61.*";

  3. // -- 拒绝其他IP访问该页
  4. if (!detect_allowed_ip($allow_ips)) die("对不起,你无权访问本页!");
复制代码

论坛徽章:
0
3 [报告]
发表于 2003-06-16 03:57 |只看该作者

想做一个ip管理程序,不知道如何实现

//定义限制ip地址,可以使用各种格式
$sys_denyip="127.0.0.1|192.168.0.*|202.96.*.*";

if (eregi("$sys_denyip",$REMOTE_ADDR)){
//出错处理
}
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP