MaxKeepAliveRequests用于限制单个Keep-Alive连接最多处理的请求数,默认100,建议设为50–200;需配合KeepAlive On和KeepAliveTimeout使用,全局生效,可按虚拟主机或目录覆盖。

直接在 Apache 主配置文件(如 httpd.conf 或 apache2.conf)中设置 MaxKeepAliveRequests 即可限制单个长连接能处理的最大请求数。
关键配置项:MaxKeepAliveRequests
这个参数控制同一个 Keep-Alive 连接上最多允许多少次 HTTP 请求复用。超过该数值后,Apache 会主动关闭该连接,释放资源。
- 默认值通常是 100,对大多数网站足够安全且高效
- 设为 0 表示不限制,但不推荐——可能被异常客户端长期占用连接
- 建议值范围:50–200,具体取决于业务特征:短平快接口可设高些(如 100–200),含大文件或慢响应的场景建议调低(如 50–100)
配套必须开启的配置
单独设 MaxKeepAliveRequests 不生效,需确保以下基础连接复用机制已启用:
- KeepAlive On:启用连接复用功能
- KeepAliveTimeout 5:空闲连接保持时间(秒),建议 3–10 秒,避免连接长期挂起
这三项通常写在一起,例如:
Apache Superset 是一个广泛采用的开源 BI 平台,用于 SQL 探索、图表构建和仪表板交付。当代理需要查询仓库数据、组装仪表板或使用成熟的分析界面解释指标而不是临时笔记本代码时,此技能非常有用。
KeepAliveTimeout 5
MaxKeepAliveRequests 100
注意作用范围
该配置是全局生效的,适用于所有虚拟主机和路径。如需对特定站点或目录差异化控制,可在 <VirtualHost> 或 <Directory> 块内重写,但需确保上级未用 AllowOverride None 禁用覆盖。
验证是否生效
重启 Apache 后,可通过 curl 模拟长连接观察行为:
curl -H "Connection: keep-alive" -v http://your-site/first.htmlcurl -H "Connection: keep-alive" -v http://your-site/second.html
若第 101 次请求(按你设的值)返回 Connection: close 头,说明限制已起作用。

















