温馨提示×

centos apache2如何限速

小樊
47
2026-09-06 02:58:30
栏目: 智能运维

CentOS 上(注意:CentOS 默认是 httpd,不是 apache2,apache2 是 Debian/Ubuntu 的叫法),如果你说的是 Apache 限速,常见有几种做法。下面按「实用程度」给你讲。


一、使用 mod_ratelimit(最简单,推荐)

Apache 自带模块,适合限制下载/响应速度

1. 确认模块已启用

httpd -M | grep ratelimit

如果没有,启用:

yum install mod_ratelimit
# 一般已内置

2. 配置限速

编辑配置(推荐新建文件):

vi /etc/httpd/conf.d/ratelimit.conf

示例(限制为 100KB/s):

<IfModule mod_ratelimit.c>
    <Location /download>
        SetOutputFilter RATE_LIMIT
        SetEnv rate-limit 100
    </Location>
</IfModule>

说明:

  • rate-limit 100 → 100 KB/s
  • 单位:KB/s

3. 重启 Apache

systemctl restart httpd

✅ 适合:下载站、大文件限速


二、使用 mod_bw(更细粒度,但需额外装)

1. 安装

yum install mod_bw

2. 配置示例

<IfModule mod_bw.c>
    BandWidthModule On
    ForceBandWidthModule On
    BandWidth all 102400   # 100KB/s
    MinBandWidth all 10240 # 最小10KB/s
</IfModule>

可针对 IP、目录、文件类型限速。


三、使用 iptables / tc(系统级限速,不推荐新手)

适合:

  • 限制整个 IP
  • 限制某个端口(80/443)

示例(限制某 IP 速度):

tc qdisc add dev eth0 root tbf rate 1mbit burst 32kbit latency 400ms

⚠️ 复杂、易出错,一般不建议只为了 Apache 限速。


四、使用 Nginx 反向代理限速(进阶)

如果你后面挂了 Nginx:

limit_rate 100k;

总结推荐

需求 方案
简单下载限速 ✅ mod_ratelimit
复杂规则 mod_bw
全局限制 iptables/tc
反向代理 Nginx

如果你能说清楚:

  • 上传还是下载限速
  • 整个服务器还是某个目录
  • CentOS 版本(7 / 8 / Stream)

我可以给你精确配置文件

0