找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1753|回复: 0
打印 上一主题 下一主题

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

[复制链接]

2487

主题

2487

帖子

7391

积分

论坛元老

Rank: 8Rank: 8

积分
7391
跳转到指定楼层
楼主
发表于 2018-2-14 05:46:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            这段时间在统计工具里面总是看到一些未知浏览器、未知操作系统的用户的频繁请求而且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获取ip对应地区和使用网络类型的方法
  • php实现ip白名单黑名单功能
  • PHP实现获取客户端IP并获取IP信息
  • PHP判断IP并转跳到相应城市分站的方法
  • php限制ip地址范围的方法
  • php获取访问者IP地址汇总
  • PHP curl伪造IP地址和header信息代码实例
  • php实现根据IP地址获取其所在省市的方法
  • php判断访问IP的方法
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端