首页  >  文章  >  后端开发  >  php 如何禁止代理ip访问

php 如何禁止代理ip访问

藏色散人
藏色散人原创
2020-11-05 11:09:112989浏览

php禁止代理ip访问的实现方法:首先通过“empty($_SERVER['HTTP_VIA']) or exit('Access Denied');”判断代理IP;然后设置监控变量;接着处理监控结果;最后跳转至攻击者服务器地址即可。

php 如何禁止代理ip访问

推荐:《PHP视频教程

PHP防止网页快速刷新+代理ip访问

前几天网站收到了一些CC攻击,比较郁闷。。。这里分享一下,防止网页自动刷新的方法以及阻止代理IP访问网站的方法,代码是分开的,两个功能,需要那个用那个,可以自定义时间间隔,这个代码不止可以防CC攻击,也可以防止各种东西 只要加入header就可以统统使用了,灰常给力,废话不多说了,直接上代码:

<?php
/**
* @无作为
* www.wuzuowei.com
*/
//代理IP直接退出
empty($_SERVER[&#39;HTTP_VIA&#39;]) or exit(&#39;Access Denied&#39;);
//防止快速刷新
session_start();
$seconds = &#39;3&#39;; //时间段[秒]
$refresh = &#39;5&#39;; //刷新次数
//设置监控变量
$cur_time = time();
if(isset($_SESSION[&#39;last_time&#39;])){
$_SESSION[&#39;refresh_times&#39;] += 1;
}else{
$_SESSION[&#39;refresh_times&#39;] = 1;
$_SESSION[&#39;last_time&#39;] = $cur_time;
}
//处理监控结果
if($cur_time - $_SESSION[&#39;last_time&#39;] < $seconds){
if($_SESSION[&#39;refresh_times&#39;] >= $refresh){
//跳转至攻击者服务器地址
header(sprintf(&#39;Location:%s&#39;, &#39;http://127.0.0.1&#39;));
exit(&#39;Access Denied&#39;);
}
}else{
$_SESSION[&#39;refresh_times&#39;] = 0;
$_SESSION[&#39;last_time&#39;] = $cur_time;
}
?>

以上是php 如何禁止代理ip访问的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn