Fix: HTTP server should close when Connection is close

This commit is contained in:
gVisor bot 2021-03-30 16:33:49 +08:00
parent 1860de9362
commit c21bd48213

View file

@ -54,7 +54,12 @@ func handleHTTP(ctx *context.HTTPContext, outbound net.Conn) {
goto handleResponse goto handleResponse
} }
if keepAlive || resp.ContentLength >= 0 { // close conn when header `Connection` is `close`
if resp.Header.Get("Connection") == "close" {
keepAlive = false
}
if keepAlive {
resp.Header.Set("Proxy-Connection", "keep-alive") resp.Header.Set("Proxy-Connection", "keep-alive")
resp.Header.Set("Connection", "keep-alive") resp.Header.Set("Connection", "keep-alive")
resp.Header.Set("Keep-Alive", "timeout=4") resp.Header.Set("Keep-Alive", "timeout=4")