$sent_http_cache_control

$sent_http_cache_control содержит значение заголовка 'Cache-Control', отправленного в HTTP-ответе. — NGINX Core (HTTP)

$sent_http_cache_control NGINX Core (HTTP)

Описание

Переменная $sent_http_cache_control получает значение HTTP-заголовка 'Cache-Control', который NGINX отправляет клиенту. Она задаётся при обработке ответа NGINX и может изменяться в зависимости от различных настроек, таких как `expires`, `add_header` или `proxy_cache`. Эта переменная особенно полезна при отладке или настройке заголовков ответа сервера, поскольку позволяет фиксировать и логировать отправляемые директивы кэширования. Как правило, значение этой переменной может содержать директивы, такие как 'no-cache', 'private', 'max-age=3600', 'public', либо быть пустым, если заголовок не задан. Её можно использовать в сочетании с другими переменными для динамической корректировки заголовков ответа в зависимости от условий сервера или конфигурации, что даёт больше контроля над тем, как клиенты и промежуточные узлы в HTTP-цепочке кешируют ответы. Переменная вычисляется только после отправки заголовков ответа, то есть отражает окончательное значение, включённое в ответ. Если заголовок Cache-Control устанавливается или изменяется несколько раз, переменная будет содержать последнее значение, установленное перед завершением ответа.

Пример конфига

location /example {
    proxy_pass http://backend;
    add_header Cache-Control "private, max-age=3600";
    log_format custom '$remote_addr - $remote_user [$time_local] "$request" $status $sent_http_cache_control';
    access_log /var/log/nginx/access.log custom;
}

Подсистема

http

Кэшируется

Да

Контексты

http, server, location, if, limit_except

Переменная будет пустой, если заголовок 'Cache-Control' не установлен в ответе.

Убедитесь, что вы устанавливаете заголовок в правильном контексте; если он установлен внутри location block, он будет применяться только к запросам, которые попадают в этот контекст.

Изменение заголовков ответа после их отправки не повлияет на эту переменную.