我必须降低 Apache 超时值。我尝试将其设为 3 或 5。我打开了与 Apache 的 telnet 连接,但没有数据,它总是 ~30 秒 + Apache 超时。
我在 Apache 2.2 中测试了此配置,它工作正常(3 秒后连接自动关闭)。我尝试在 VPS 中全新安装 Apache 2.4,不使用 CGI 和启用较少的模块,但没有成功。
这些是我拥有的模块:authz_core.load authz_user.load headers.load mpm_prefork.conf mpm_prefork.load
但是,如果你打开连接并发送一些内容(比如请求的第一行),它就会运行良好,然后超时会成功应用
有什么想法吗?谢谢
答案1
这是 AcceptFilter 配置(2.4 版新增)。默认为“数据”,Linux 内核不会告诉 Apache 有关连接的任何信息,除非该连接上有数据。
要“解决”这个问题,只需在 apache2.conf 中添加:AcceptFilter http none
甚至 AcceptFilter https none
因此连接会直接传递给 Apache。但没有必要这样做,因为 Apache 尚未处理连接。