php简单实现屏蔽指定ip段用户的访问


Posted in PHP onApril 29, 2015

这段时间在统计工具里面总是看到一些未知浏览器、未知操作系统的用户的频繁请求而且ip都在一个段里面,使我产生了一些疑问,这些用户算是有效用户吗。网站访问没有浏览器没有操作系统的记录,我经过几天的分析确认这些访问不是人在访问而是一些机器或者是别人在采集我的站内的东西,萌生了一种屏蔽这个ip的想法。

把统计里面的没有浏览器记录的用户数据导出来看了下屏蔽ip已经不现实了ip不少一百多个,但是仔细观看不难看出这些ip都集中在某些ip断内。想个办法屏蔽整个ip段的用户,也许会造成一些误杀但是能确保网站流量是干净的。

好了,废话我也不说了。下面介绍下我的实现思路以及实现的代码

我是想的屏蔽ip段的前两端 111.11.11.11  这个ip我就要屏蔽以111.11开头的多有这个ip段内的访问

我的实现思路是把要屏蔽的ip集中存在一个数组中然后用获得的用户的ip去数组中匹配,在数组中的就屏蔽 不在数组中的就放行。

上菜吧  我写好的一个函数 很粗糙的一个高手们不要喷

/** 
 * 屏蔽IP段 
 */ 
function killIp($ip){ 
  $return = false; 
  $ip1 = array('111', '112', '102', '114'); 
  $ip2 = array('1', '2', '3', '4', '5'); 
  $temp = explode('.', $ip); 
  if (in_array($temp[0], $ip1) && in_array($temp[1], $ip2)) { 
    $return = true; 
  } 
  return $return; 
}

以上所述就是本文的全部内容了,希望大家能够喜欢。

PHP 相关文章推荐
随时给自己贴的图片加文字的php代码
Mar 08 PHP
PHP 引用文件技巧
Mar 02 PHP
PHP将整个网站生成HTML纯静态网页的方法总结
Feb 05 PHP
php数据结构与算法(PHP描述) 快速排序 quick sort
Jun 21 PHP
php版微信自动获取收货地址api用法示例
Sep 22 PHP
PHP使用GD库输出汉字的方法【测试可用】
Nov 10 PHP
php实现的redis缓存类定义与使用方法示例
Aug 09 PHP
PHP实现浏览器格式化显示XML的方法示例
Jan 22 PHP
PHP的mysqli_stat()函数讲解
Jan 23 PHP
PHP实现一个轻量级容器的方法
Jan 28 PHP
浅谈Laravel POST,PUT,PATCH 路由的区别
Oct 15 PHP
php设计模式之观察者模式实例详解【星际争霸游戏案例】
Mar 30 PHP
php实现中文字符截取防乱码方法汇总
Apr 29 #PHP
WIN8.1下搭建PHP5.6环境
Apr 29 #PHP
php筛选不存在的图片资源
Apr 28 #PHP
php+ajax实现无刷新动态加载数据技术
Apr 28 #PHP
php恢复数组的key为数字序列的方法
Apr 28 #PHP
php递归调用删除数组空值元素的方法
Apr 28 #PHP
php删除文本文件中重复行的方法
Apr 28 #PHP
You might like
将OICQ数据转成MYSQL数据
2006/10/09 PHP
一周让你学会PHP 不错的学习资料
2009/02/06 PHP
PHP 开源AJAX框架14种
2009/08/24 PHP
php使用Session和文件统计在线人数
2015/07/04 PHP
基于jquery完美拖拽,可返回拖动轨迹
2012/03/29 Javascript
页面回到顶部的三种实现(锚标记,js)
2012/10/01 Javascript
如何使用jquery控制CSS样式,并且取消Css样式(如背景色,有实例)
2013/07/09 Javascript
JavaScript定义变量和变量优先级问题探讨
2014/10/11 Javascript
node.js中的fs.chmod方法使用说明
2014/12/18 Javascript
JavaScript轮播图简单制作方法
2017/02/20 Javascript
ES6新特性二:Iterator(遍历器)和for-of循环详解
2017/04/20 Javascript
vue-cli axios请求方式及跨域处理问题
2018/03/28 Javascript
jquery获取select选中值的文本,并赋值给另一个输入框的方法
2018/08/21 jQuery
详解Vue项目中出现Loading chunk {n} failed问题的解决方法
2018/09/14 Javascript
微信小程序点击列表跳转到对应详情页过程解析
2019/09/26 Javascript
6种JavaScript继承方式及优缺点(小结)
2020/02/06 Javascript
[07:57]DOTA2热力大趴狂欢夜 广州站活动回顾
2013/11/27 DOTA
Python安装第三方库及常见问题处理方法汇总
2016/09/13 Python
python提取具有某种特定字符串的行数据方法
2018/12/11 Python
新手入门Python编程的8个实用建议
2019/07/12 Python
Django REST framework 单元测试实例解析
2019/11/07 Python
详解Python在使用JSON时需要注意的编码问题
2019/12/06 Python
Jupyter notebook设置背景主题,字体大小及自动补全代码的操作
2020/04/13 Python
详解pandas获取Dataframe元素值的几种方法
2020/06/14 Python
C#面试常见问题
2013/02/25 面试题
宝宝周岁宴答谢词
2014/01/26 职场文书
通信研究生自荐信
2014/02/01 职场文书
优秀应届生求职信
2014/06/16 职场文书
法人身份证明书
2014/10/08 职场文书
2015年医院工作总结范文
2015/04/09 职场文书
通知格式
2015/04/27 职场文书
入党团支部推荐意见
2015/06/02 职场文书
同意落户证明
2015/06/19 职场文书
MySQL 角色(role)功能介绍
2021/04/24 MySQL
为什么mysql字段要使用NOT NULL
2021/05/13 MySQL
深入理解java.lang.String类的不可变性
2021/06/27 Java/Android