2013-03-20 3 views
0

Я играл с OpenSSL s_client и веб-сервер, и я удивляюсь, почему я теряю связь с сервером после каждого GET запрос я посылаю:OpenSSL s_client потери связи после каждого запроса

Рукопожатие работает отлично:

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 

Как вы видите соединение близко d, но поскольку я использовал заголовок соединения с keep-alive, не соединение должно оставаться установленным? Я хочу проверить функцию переобучения SSL, и поэтому мне нужно иметь возможность поддерживать сеанс между несколькими запросами.

+0

Ваш веб-сервер также отправляет заголовок keepalive? – pfried

+0

В ответе указывается: 'Соединение: close' Таким образом, это значит, что мой сервер не поддерживает поддержку на своей стороне? – lightsaber

+1

Я предполагаю, что он не поддерживает keepalive без изменений конфигурации на стороне сервера – pfried

ответ

1

Ваш сервер должен ответить заголовком Connection: Keep-Alive, а также установить постоянное соединение.

Для этого измените конфигурацию на стороне сервера.

Но имейте в виду проблемы с производительностью, связанные с подключением keepalive, а также тот факт, что многие браузеры закрывают соединение после определенного таймаута.

+0

Большое вам спасибо, что прояснил это для меня – lightsaber

Смежные вопросы