mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2024-12-15 16:04:37 +00:00
8a8e1d99cb
Some servers do not completely conform with RFC2616 requirements for keep-alive when they receive a request with "Connection: close". More specifically, they don't bother using chunked encoding, so the client never knows whether the response is complete or not. One immediately visible effect is that haproxy cannot maintain client connections alive. The second issue is that truncated responses may be cached on clients in case of network error or timeout. Óscar Frías Barranco reported this issue on Tomcat 6.0.20, and Patrik Nilsson with Jetty 6.1.21. Cyril Bonté proposed this smart idea of pretending we run keep-alive with the server and closing it at the last moment as is already done with option forceclose. The advantage is that we only change one emitted header but not the overall behaviour. Since some servers such as nginx are able to close the connection very quickly and save network packets when they're aware of the close negociation in advance, we don't enable this behaviour by default. "option http-pretend-keepalive" will have to be used for that, in conjunction with "option http-server-close". |
||
---|---|---|
.. | ||
common | ||
import | ||
proto | ||
types |