1

我正在玩 openssl s_client 和一个网络服务器,我想知道为什么我在发送每个 GET 请求后都会失去与服务器的连接:

握手工作正常:

openssl s_client -connect hostname:port
GET / HTTP/1.1
Host: hostname
Connection: keep-alive

然后我收到应用服务器的响应:HTTP/1.1 200 OK

...more http here...
<html/>closed

如您所见,连接已关闭,但是当我将连接标头用于保持活动状态时,连接不应该保持建立吗?我想测试 SSL 的重新协商功能,因此我需要能够在多个请求之间保持会话处于活动状态。

4

1 回答 1

2

您的服务器也必须回复Connection: Keep-Alive标头以建立保持连接。

更改您的服务器端配置以执行此操作。

但请注意keepalive 连接带来的性能问题,以及许多浏览器在特定超时后关闭连接的事实。

于 2013-03-20T09:38:00.000 回答