在 Ubuntu + Apache2 环境下,常见的限速方式有以下几种,按使用频率和推荐程度排序:
mod_ratelimit(推荐,最简单)sudo a2enmod ratelimit
sudo systemctl restart apache2
在虚拟主机或目录配置中(如 /etc/apache2/sites-available/000-default.conf):
<Directory /var/www/html>
SetOutputFilter RATE_LIMIT
SetEnv rate-limit 100
</Directory>
说明:
rate-limit 100 表示 每秒最多 100 KB也可以针对某个 URL:
<Location /download>
SetOutputFilter RATE_LIMIT
SetEnv rate-limit 50
</Location>
mod_bw(第三方带宽限制模块)适合更细粒度控制(按 IP、文件类型等)。
Ubuntu 默认仓库可能没有,可用:
sudo apt install libapache2-mod-bw
启用:
sudo a2enmod bw
sudo systemctl restart apache2
<Directory /var/www/html>
BandwidthModule On
ForceBandWidthModule On
Bandwidth all 500000
MinBandwidth all 50000
</Directory>
说明:
mod_qos(高级限流 / 防刷)适合:
sudo apt install libapache2-mod-qos
sudo a2enmod qos
示例:
QS_LocRequestLimitMatch .* 50
QS_EventLimitCount 100
如果 Apache 无法满足需求,可用 tc / nginx / 反向代理方式限速。
| 需求 | 推荐方式 |
|---|---|
| 简单下载限速 | mod_ratelimit |
| 精细带宽控制 | mod_bw |
| 防刷 / 并发控制 | mod_qos |
| 全局网络限速 | tc |
如果你能说明:
apache2 -v)我可以给你一份精准配置示例。