“持久连接”到底意味着什么?

时间:2009-09-26 03:11:11

标签: http connection persistent

我读到了“HTTP persistent connection”,但不知怎的,我似乎不明白在这种情况下持久性意味着什么。
你能详细说明一下吗?

3 个答案:

答案 0 :(得分:28)

这意味着服务器在完成推送响应后不会关闭套接字(因此必须通过标头或分块以其他方式指示响应的长度),因此客户端可以在同一个套接字上发出其他请求。网页通常在与页面本身相同的服务器上请求其他几个部分(图像,CSS,脚本......),因此重新使用套接字来对同一服务器的一些进一步请求可以减少总体延迟,与关闭原始套接字并为所有后续请求打开新的套接字。

答案 1 :(得分:21)

到目前为止,所有讨论都是从浏览器方面进行的。浏览器首先请求实际页面,它会解析页面并在呈现该页面之前找出所需的所有其他资源。浏览器逐个请求这些资源和其他相关资源。因此,维护持久连接在这里是非常有效的,因为避免了创建和销毁连接的开销。

现在从Web服务器端,持久连接将允许它将内容“推送”到Web浏览器。现在HTTP不支持这一点。因此,javascript的解决方法很少,其中页面基本上会在一段时间后刷新。

您可以看到许多基于Web的电子邮件提供商正在使用这种技巧,这些提供商不断在后台检查新邮件。这给人一种感觉,当新邮件到达时,服务器将新邮件通知“推送”到Web浏览器。但实际上,它实际上是Web浏览器,它不断检查服务器是否有新邮件。

我想说的另一点是,我们实际上看不到任何页面刷新,因为另一个技巧只允许请求刷新页面的特定部分。 (提示:AJAX)

答案 2 :(得分:1)

我认为这是网站浏览器的http或https切换。如果你有旧的https://并且你现在使用http浏览器.htaccess文件,那么这个问题应该通过yoast插件创建一个页面抓取页面。不要担心它不重要的错误。对于黑客,如果您的ssl连接为空,这是一种破解您的网站的方法,他们应该将页面或域附加到您的ssl连接 e.b http://www.example.com当您在浏览器中显示https://www.example.com时,还有一些其他链接可以打开您的网站域名。

此解决方案始终使用您的网站完整地址:保护黑客免受您的网站使用ssl和https:/ page为您的网站。

然后,此问题在任何测试站点或页面中都不会出现。