ilyafreer/php-ddos-defender

基于历史文件驱动的PHP DDoS卫士

1.0 2023-05-10 11:03 UTC

This package is auto-updated.

Last update: 2024-09-18 22:09:53 UTC


README

由历史文件驱动

安装

composer require ilyafreer/php-ddos-defender

示例用法

require 'vendor/autoload.php';

use Ilyafreer\DdosDefender\Defender;

(new Defender())
    ->setIpList(['172.27.0.1'])
    ->setTimeOutList([0.5, 1, 1.5, 2, 3, 5, 10, 15])
    ->useUserAgent()
    ->run();

可能性

  • 设置禁用的IP v4地址列表
->setIpList([
        '172.27.0.1',
        '172.27.0.2',
        '172.27.0.3'
    ]
)
  • 设置用户代理(或其参数)列表
->setUserAgentList(
    [
        'AppleWebKit/537.36 (KHTML, like Gecko)'
    ]
)
  • 设置以秒为单位的超时访问(参数数量不限)
->setTimeOutList([0.5, 1, 1.5, 2, 3, 5, 10, 20, 30])
  • 设置响应代码和消息文本
->setBlockCode(401) #(default - 429)
->setBlockMessage('Some message') #(default - Too many requests)
  • 设置删除历史文件的间隔(默认 - 5天)
->setDeleteHistoryInterval(2) 
  • 设置历史文件路径(默认 - 当前启动文件夹)
->setPathFile('/app/defender/')
  • 使用超时通过IP + 用户代理数据进行阻塞(默认 - 关闭)
->useUserAgent()