首页 > 编程语言 >如何使用PHP代码防护轻量级CC攻击?

如何使用PHP代码防护轻量级CC攻击?

时间:2025-01-20 11:04:17浏览次数:1  
标签:文件 请求 次数 CC 访问 时间 IP地址 PHP 轻量级

  1. 设置IP访问限制

    • 定义每个IP地址在指定时间内的请求限制次数。
    • 定义时间限制(秒)。
  2. 获取用户IP地址

    • 使用$_SERVER['REMOTE_ADDR']获取用户的IP地址。
  3. 存储访问记录

    • 使用文件存储每个IP地址的访问时间和请求次数。
    • 文件路径和文件名使用IP地址的SHA1哈希值,确保唯一性。
  4. 读取和更新访问记录

    • 如果文件不存在,初始化访问时间和请求次数。
    • 如果文件存在,读取当前的访问时间和请求次数。
  5. 检查访问次数

    • 如果用户在指定时间内请求次数超过限制,返回429状态码。
    • 如果请求次数未超过限制,更新访问时间和请求次数。
  6. 保存更新后的访问记录

    • 将更新后的访问时间和请求次数写入文件。
  7. 执行正常业务代码

    • 在防护机制通过后,执行正常的业务代码。

标签:文件,请求,次数,CC,访问,时间,IP地址,PHP,轻量级
From: https://www.cnblogs.com/hwrex/p/18655079

相关文章

  • 太香了!一款轻量级的 Elasticsearch 可视化管理工具!
    大家好,我是Java陈序员。今天,给大家介绍一款轻量级的Elasticsearch可视化管理工具,可替代Kibana!关注微信公众号:【Java陈序员】,获取开源项目分享、AI副业分享、超200本经典计算机电子书籍等。项目介绍Elasticvue——一个免费且开源的Elasticsearch在线可视化客户端,用于......
  • Centos7.9安装phpldapadmin
    @目录一、背景二、正文2.1安装phpldapadmin2.4登录phpldapadmin界面三、安装途中可能碰到的报错错误场景1:执行步骤“安装phpldapadmin”执行命令:yuminstall-yphpldapadmin时报错错误场景2:安装phpldapadmin完成后,apache启动报错,执行启动命令systemctlstarthttpd、systemctl......
  • 如何解决phpMyAdmin导出时提示“当前表单包含的字段多于 1000,受限于PHP 中 max_input_
    常见原因max_input_vars 设置过低:默认情况下,max_input_vars 的值为1000,当表单字段超过这个数量时,就会触发警告。表单字段过多:某些大型数据库或复杂的表单可能会包含超过1000个字段。解决方法方法一:修改 php.ini 文件找到 php.ini 文件:php.ini 文件通常位于PHP安......
  • 如何修改PHPOK网站模板中的Logo
    PHPOK是一款功能强大的内容管理系统,广泛应用于各种类型的网站。如何在PHPOK网站模板中修改Logo,使其更加符合网站的品牌形象?解决方案:登录后台管理系统:首先,以管理员身份登录PHPOK的后台管理系统。进入模板管理:在后台管理系统中,找到“模板管理”或“主题管理”选项,点击进入。选......
  • Unraid 安装 WindowsServer2019 及 NGINX、PHP、Python 环境
    一、安装虚拟机使用Unraid安装。项目值初始内存:4096MB最大值内存:6144MB机器:i440fx-7.2BIOS:OVMF启用USB启动引导:NoHyper-V:是USB控制器:2.0(EHCI)操作系统安装ISO:windows_server_2019.iso操作系统安装光盘总线:......
  • 如何在Windows下创建 .htaccess 文件?
    常见问题文件名输入:Windows系统要求新建文件时必须输入文件名,直接创建 .htaccess 文件会提示错误。文件类型选择:需要正确选择文件类型和编码,以确保文件正确保存。解决方法方法一:通过文本文件创建 .htaccess 文件新建一个文本文件:在Windows资源管理器中,右键点击空白......
  • BPF开发之从BCC转换到libbpf/BPF CO-RE
    此文裁剪翻译自https://nakryiko.com/posts/bcc-to-libbpf-howto-guide/#helper-sub-programs。个人翻译,水平有限。BCCtolibbpflibbpf支持很多BCC不具备的特性,如全局变量、BPF骨架。BCC依赖于运行时编译,并内置了整个LLVM/Clang库,导致:编译时高额资源消耗;对内核头文件......
  • 以太网三大链路类型对比:如何选择Access、Trunk或Hybrid?
    以太网链路类型指的是不同的链路连接模式,这些模式决定了交换机与交换机、交换机与路由器、交换机与终端设备之间如何交换数据。理解这些链路类型有助于优化网络结构,提高数据传输效率,确保网络的稳定性和安全性。在以太网中,链路类型分为三种:Access链路、Trunk链路和Hybrid链......
  • 验题——8008: 纸牌游戏( "Accordian" Patience)
    8008:纸牌游戏("Accordian"Patience)题面思路用栈数组模拟,注意寻找pos的左边第一个和左边第三个下标的写法。示例代码usingnamespacestd;#definelllonglong//#defineintll#definepiipair<int,int>#defineall(x)x.begin(),x.end()#definefer(i,m,n)f......
  • 基于php的旅游网站旅游系统广西旅游网站php+mysql毕业设计php源码获取课程设计毕设指
    一、功能介绍该网站主题是旅游相关,实现了旅游景点、美食以及酒店的预定功能,并且实现了在线论坛。前台功能首页:旅游信息、酒店信息、美食信息旅游美食:列表、详情、下单酒店:列表、详情、下单景点:列表、详情、下单购物车、去下单、订单信息、评论在线论坛用户中心:我的订......