温馨提示×

debian apache怎么限速

小樊
37
2026-09-15 16:37:22
栏目: 智能运维

在 Debian 上通过 Apache 实现限速,常见有几种方式,从简单到灵活依次如下:


一、使用 Apache 自带模块(推荐简单场景)

1. mod_ratelimit(Apache 2.4+,Debian 默认支持)

适合限制下载/响应速度。

安装与启用

sudo a2enmod ratelimit
sudo systemctl restart apache2

配置示例(限速 100 KB/s)

在虚拟主机或目录配置中:

<Location /downloads>
    SetOutputFilter RATE_LIMIT
    SetEnv rate-limit 100
</Location>

单位:

  • rate-limit:KB/s
  • 支持:rate-limit 50、rate-limit 500

✅ 优点:简单、稳定
❌ 缺点:不能限制并发数、只限制输出


二、限制并发连接数(防刷)

2. mod_reqtimeout + mod_status(基础)

sudo a2enmod reqtimeout
RequestReadTimeout header=10-20,MinRate=500

3. mod_evasive(防 CC / 简单限速)

适合请求频率限制。

sudo apt install libapache2-mod-evasive
sudo a2enmod evasive

配置 /etc/apache2/mods-enabled/evasive.conf:

DOSHashTableSize 3097
DOSPageCount 10
DOSSiteCount 50
DOSPageInterval 1
DOSSiteInterval 1
DOSBlockingPeriod 60

✅ 防刷效果好
❌ 不是严格“带宽限速”


三、使用 mod_bw(经典限速模块)

Debian 官方源已不推荐,但可用

sudo apt install libapache2-mod-bw
sudo a2enmod bw

示例:

<Directory /var/www/html>
    BandwidthModule On
    ForceBandWidthModule On
    Bandwidth all 102400
    MinBandwidth all 10240
</Directory>

单位:字节/秒


四、在系统层限速(推荐生产环境)

如果目标是整体带宽控制,更推荐:

  • tc(流量控制)
  • nginx + limit_rate
  • 反向代理层限速

Apache 本身限速能力有限。


五、推荐组合方案

场景 推荐
下载限速 mod_ratelimit
防刷 mod_evasive
并发限制 mod_reqtimeout
精确带宽 系统 tc

如果你能说明:

  • Apache 版本
  • 想限“下载速度 / 请求频率 / 单 IP”
  • 是否公网服务器

我可以给你一份可直接用的配置。

0 踩