$sent_http_keep_alive
Переменная $sent_http_keep_alive в NGINX содержит значение заголовка 'Keep-Alive', отправленного клиенту в ответе. — NGINX Core (HTTP)
Описание
Переменная $sent_http_keep_alive устанавливается ядром NGINX при подготовке ответа для клиента. Она отражает заголовок 'Keep-Alive', отправляемый в HTTP-ответе, который информирует клиента о том, хочет ли сервер оставить соединение открытым для нескольких HTTP-запросов или закрыть его после текущей транзакции. Эта переменная может принимать значения, такие как 'timeout=5', что указывает, как долго соединение должно поддерживаться перед тайм-аутом, или 'timeout=0', что означает, что соединение должно быть закрыто сразу после отправки ответа. При настройке параметров keep-alive NGINX эффективно управляет постоянными соединениями и использует эту переменную, чтобы сообщать клиенту о предпочтениях сервера. Если keep-alive отключен или неприменим, эта переменная может оставаться пустой. Состояние $sent_http_keep_alive также может быть изменено различными директивами, например 'keepalive_timeout', которая определяет, как долго сервер позволит соединению оставаться неактивным перед его закрытием, что делает эту переменную критически важной для производительности в условиях высокой нагрузки, когда поддержание открытых соединений может снизить задержки для последующих запросов от того же клиента.
Пример конфига
http {
keepalive_timeout 65;
server {
listen 80;
location / {
add_header Keep-Alive "$sent_http_keep_alive";
}
}
}Подсистема
httpКэшируется
ДаКонтексты
http, server, locationПеременная будет пустой, если keep-alive не задан или отключён; убедитесь, что вы включили keep-alive в вашей конфигурации.
Если заголовок Keep-Alive не включён в ответ для конкретных запросов, переменная не будет иметь никакого значения.