apache2.conf 和 ProxyPass 中的 keepalive 之间的区别

apache2.conf 和 ProxyPass 中的 keepalive 之间的区别

我在用Apache 2.2.22

如果有的话,Keepalive 指令与/etc/apache2/apache2.conf

#
# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection). Set to "Off" to deactivate.
#
KeepAlive On

/sites-enabled以及使用 ProxyPass 时配置中的指令

 ProxyPass / http://localhost:8080/app/ connectiontimeout=28800 timeout=28800 Keepalive=On

答案1

主配置文件中的 KeepAlive

Apache 通常使用 HTTP 1.0 协议进行通信,在响应后关闭连接。保持活动状态此处的参数将使 apache 使用 HTTP 1.1,其中使用单个 TCP 连接发送多个请求/响应。当大量请求来自单个客户端时,这会使服务器更快。

ProxyPass 中的 KeepAlive

此时 Apache 将向上游服务器(请求的代理服务器)发送 KeepAlive 探测,以保持连接处于活动状态。当 Apache 和上游服务器之间有防火墙时,该功能非常有用,因为防火墙会丢弃不活动的连接。

参考

主要配置: https://httpd.apache.org/docs/2.4/mod/core.html

代理密码: https://httpd.apache.org/docs/2.2/mod/mod_proxy.html

相关内容