> 백엔드 개발 > PHP 튜토리얼 > php简单实现屏蔽指定ip段用户的访问_PHP

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

WBOY
풀어 주다: 2016-06-01 11:06:07
원래의
885명이 탐색했습니다.

这段时间在统计工具里面总是看到一些未知浏览器、未知操作系统的用户的频繁请求而且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.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿