Rumah >pembangunan bahagian belakang >masalah PHP >php 如何禁止代理ip访问

php 如何禁止代理ip访问

藏色散人
藏色散人asal
2020-11-05 11:09:113030semak imbas

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;
}
?>

Atas ialah kandungan terperinci php 如何禁止代理ip访问. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:php怎么正确删除cookieArtikel seterusnya:php删除cookie的实现方法