什么时候尊重keepalive

时间:2013-08-06 01:31:29

标签: httpserver

我正在服务器上工作,我想知道什么时候应该尊重标题中的keep-alive?如果客户端在没有或没有错误授权的情况下发送请求,那么在发送401响应之后应该保持活着吗?

更广泛的问题是:是否有文件或标准显示哪些代码应该遵守保持活动以及哪些代码不应该?我可以看到500不尊重保持活力,但也许仍然尊重400年代的保持活力。

目前这是使用的逻辑:

if ((400 <= status) && (505 >= status)
{
    keep-alive = false;
}
else
{
    //Do not update keep alive leave as what client requested
}

谢谢!

1 个答案:

答案 0 :(得分:0)

即使在HTTP / 1.1&#34; Connection:close&#34;是默认值。连接类型通常在标题的底部指定,即使它不是必需的。什么样的HTTP代码不应该改变连接类型。

您通常会关闭连接,如果它是4 - 或5--代码,因为您不希望用户代理(浏览器)尝试与服务器连接,直到用户刷新网页或试图访问另一个。保持连接打开只会使客户端想要访问服务器上的另一个资源时稍快一些。

许多服务器在每次请求后关闭连接。请注意,如果用户代理指定&#34;连接:关闭&#34;在标题中,无论您回复什么,连接将始终关闭。

每当你指定关闭连接时,客户端都会希望你关闭连接,这个标题只是告诉你Socket最后的内容是什么。