关于keep-alive

你的服务器是否打开了keep-alive 呢?看看httpd.conf 就知道了,但是也不是必须的,简单测试一下就知道了,用第三个请求比较稳妥一些,看看下面的几个请求,顺便理解一下HTTP/1.0  与 HTTP/1.1 的几个区别:

请求1:
———————————-
GET / HTTP/1.1
Host: phpor.net

返回结果的编码格式:Transfer-Encoding: chunked
没有立即关闭连接,说明:HTTP/1.1 默认支持(启用)keep-alive

———————————-

请求2:
———————————-
GET / HTTP/1.0
Host: pengyou.sina.com.cn
Connection: Keep-Alive

返回结果的编码格式:Content-Length: 5556       说明: HTTP/1.0 还不支持Transfer-Encoding: chunked的传输编码方式
没有立即关闭连接,说明:HTTP/1.0 也可以使用 keep-alive
———————————-

请求3:
———————————-
GET / HTTP/1.1
Host: phpor.net
Connection: Keep-Alive

这个就肯定keep-alive了
———————————-

请求4:
———————————-
GET / HTTP/1.0
Host: phpor.net

这个请求就;
1. 不能Transfer-Encoding: chunked
2. 不能keep-alive
———————————-

结论:
要了解某个server是否打开了keep-alive ,只需用telnet发一个类似于前三种的请求,看看是否立即关闭了就行了

留下评论

邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据