在 Debian 上用 Apache 限制流量(带宽/速率),常见有 几种方案,从简单到专业依次如下:
mod_ratelimit(最简单,推荐)sudo a2enmod ratelimit
sudo systemctl restart apache2
<VirtualHost *:80>
ServerName example.com
RLimitRate 100000 # 每秒 100KB(单位:字节/秒)
</VirtualHost>
<Directory /var/www/html/download>
RLimitRate 50000
</Directory>
<FilesMatch "\.(zip|mp4|iso)$">
RLimitRate 80000
</FilesMatch>
✅ 优点:简单、无需额外软件
❌ 缺点:只能限 总速率,不能按 IP 精细控制
mod_bandwidth(第三方,功能更强)Debian 默认仓库可能没有,需要:
sudo apt install libapache2-mod-bandwidth
sudo a2enmod bandwidth
sudo systemctl restart apache2
<IfModule mod_bandwidth.c>
BandWidthModule On
BandWidth all 100000
MaxConnection all 50
</IfModule>
可针对:
✅ 比 mod_ratelimit 更细
❌ 配置稍复杂
iptables / tc(系统级限速,最精确)适合 整个服务器出口限速 或 按 IP 限速
sudo apt install iptables
tc qdisc add dev eth0 root tbf rate 1mbit burst 32kbit latency 400ms
或在 Apache 前加 Nginx 做限流更常见。
| 需求 | 推荐 |
|---|---|
| 简单限总带宽 | mod_ratelimit |
| 按 IP / 文件细限 | mod_bandwidth |
| 服务器整体限速 | tc / iptables |
| 高并发大流量 | 前置 Nginx |
如果你能说明:
我可以给你 精确配置文件。