实际应用中需要屏蔽一些不友好的访客,可针对这部分访客进行单独IP屏蔽、指定IP段屏蔽、指定地区屏蔽。

代码如下:

header("content-Type: text/html; charset=utf-8");

// 获取访客IP

function getIP(){

global $ip;

if (getenv("HTTP_CLIENT_IP"))

$ip = getenv("HTTP_CLIENT_IP");

else if(getenv("HTTP_X_FORWARDED_FOR"))

$ip = getenv("HTTP_X_FORWARDED_FOR");

else if(getenv("REMOTE_ADDR"))

$ip = getenv("REMOTE_ADDR");

else $ip = "Unknow";

return $ip;

}

//根据blockip.txt禁用ip地址及对应ip段

$ip=getIP();

while($ip[count($ip-1)]!='.')$ip=substr($ip,1, -1); //整理出ip段 ,如只需ip,可删除此行

$ban=file_get_contents("blockip.txt");

if(stripos($ban,$ip))

{

echo "document.writeln(\"\");";

}

//将IP转化城市

$getIp = getIP();

$content = file_get_contents("http://api.map.baidu.com/location/ip?ak=百度地图应用的ak秘钥&ip={$getIp}&coor=bd09ll");

$json = json_decode($content);

$city = $json->{'content'}->{'address'};//按层级关系提取address数据

//根据访问用户所在城市屏蔽

if(strpos($city,'北京')!==false||strpos($city,'广东')!==false||strpos($city,'浙江')!==false||strpos($city,'陕西')!==false)

{

echo "document.writeln(\"\");";

exit;

}

?>

blockip.txt文件内容:

BEGIN:

127.0.0.1

ip一行一个,如果启用屏蔽ip段,那么此ip对应的127.0.0段将被屏蔽

百度地图的AK秘钥申请:http://lbsyun.baidu.com/apiconsole/key?application=key

屏蔽ip段访问 html,php屏蔽ip、ip段、省份地区的访客相关推荐

  1. 设定时间段内同一IP的访问次数限制和同一IP的操作次数限制

    设定时间段内同一IP的访问次数限制: 主要使用httpservlet和timer task来记录并且运行定时(时间段比如60s)访问次数(比如最大为10),然后超出则抛出异常. 同一IP的操作次数限制 ...

  2. springboot应用本地ip能访问,局域网下ip不能访问,处理

    问题: 启动 springboot 应用后发现 本地ip能直接访问,但是局域网下其他电脑却不能访问,那么一看就知道是 防火墙问题了, 那么如何设置呢? 打开 windows 防火墙 -> 允许应 ...

  3. Nginx限制或允许IP或IP段访问

    一.环境说明 终端 IP Nginx(网站) 192.168.0.101 用户1 192.168.0.104 用户2 192.168.0.100 测试网站地址:192.168.0.101,正常不做限制 ...

  4. localhost可以访问 ip不能访问_为啥用 ip 不可以访问知乎,而百度却可以?

    (给算法爱好者加星标,修炼编程内功) 作者:帅地 (本文来自作者投稿) 我们先来ping知乎的域名,然后可以得到响应的服务器的ip, 之后我们用浏览器来访问这个ip,结果如下 被拒绝访问了. 而用ip ...

  5. 独立IP、特产浏览量(PV)、访问次数(VV)、独立访客(UV)有什么区别?

    转自 http://blog.sina.com.cn/s/blog_a5fc76bb0101073a.html 访问次数(VV):记录所有访客1天内访问了多少次您的特产,相同的访客有可能多次访问您的特 ...

  6. 网站统计中的PV(访问量):UV(独立访客):IP(独立IP)的定义与区别

    --------首先来看看ip.uv和pv的定义---------- PV(访问量):即Page View, 即页面浏览量或点击量,用户每次刷新即被计算一次. UV(独立访客):即Unique Vis ...

  7. html页面跳转IP,JS获取访客IP进行自动跳转

    因业务需要进行地区判断跳转指定站点,下面是我个人实现的办法,分享给大家,仅供参考,切勿做非法用途 第一步,获取IP并判断归属地 直接使用搜狐的IP库查询接口 返回的地址是: var returnCit ...

  8. python 通过ip获取城市_python中通过客户端IP拿到所在城市和当地天气信息—附带项目案例...

    首先,需求分析: 1.拿到客户端IP 2.通过IP拿到客户端所在地区 3.通过地区拿到当地天气 4.整合功能,展示给用户 第一步,如何拿到用户IP 我们以Django环境为例 # 客户端的请求,IP信 ...

  9. Hive经典面试题——级联求和(访客访问统计报表)

    在大数据面试中,Hive知识的考察大部分会问级联求和,业务场景虽然有很多种,比如说,年收入,月收入统计:访客访问次数年统计,月统计.等等.但是基本根源知识是级联求和,本文就以访客访问统计为例. 1.基 ...

最新文章

  1. Nginx负载均衡集群介绍
  2. Django的类视图和中间件
  3. Angular zone学习笔记
  4. 在Ant的javac中指定源文件编码方式,以避免警告: 编码 GBK 的不可映射字符的错误...
  5. SpringSecurity-1-UserDetailsService接口
  6. 试题17 方程的解(枚举法)
  7. STM32F4 LTDC学习
  8. display:block jquery.sort()
  9. 使用frp通过ssh访问公司内网机器
  10. NPS 3.0:净推荐值的补充性财务指标 - 赢得性增长率(EGR)
  11. 未来教育二级c语言的答案库在哪里,未来教育计算机二级c语言题库
  12. DELL EMC Isilon配额Quota
  13. arcmap武汉市各个行政区域的森林覆盖率和水体覆盖率
  14. 在Windows平台上使用Git和pathogen管理gVim插件
  15. App和小程序开发成本对比
  16. 声明$(function(){})的含义
  17. 雄厚实力的企业支持,是拍账王品牌前进发展的根基
  18. SQL Server 为视图或函数 指定的列名比其定义中的列多
  19. InstallShield自定义对话框浅谈(转)
  20. Android桌面布局

热门文章

  1. 2023年美赛数学建模E题思路模型分析(光污染)
  2. 亚马逊云、阿里云、腾讯云三国鼎立-横向对比
  3. AI也会“学坏”?都是人类捣的鬼!
  4. 生活用纸抗张强度预测Baseline
  5. QT in VS 多语言实现(中英文切换)
  6. 如何删掉讨厌的企业qq的小尾巴-金山安全助手
  7. 02-ROS的工程结构
  8. PHP初级【10天小积累-第十天】
  9. 想成为一个游戏程序员要有以下资料
  10. 修改windows 7下面控制台(CMD)的字体,扩充字体