sxg_expiry_seconds

Устанавливает время истечения срока действия подписанных HTTP-обменов (SXG) в секундах.

Синтаксисsxg_expiry_seconds seconds;
По умолчанию86400
Контекстserver
Аргументы1

Описание

Директива sxg_expiry_seconds задаёт срок жизни подписанных HTTP-обменов (SXG), сгенерированных NGINX, определяя, как долго эти обмены остаются действительными до истечения. Эта директива особенно важна для механизмов кэширования и помогает гарантировать, что пользователи получают актуальный контент без опоры на просроченные подписи.

Значение для sxg_expiry_seconds должно задаваться числом, обозначающим продолжительность в секундах, и не должно превышать ограничение в 604800 секунд, что эквивалентно одной неделе. Если не настроено, значение по умолчанию равно 86400 секундам (или 1 дню), то есть SXG автоматически истекут через один день, если не указано иное. Эта настройка повышает контроль над периодом валидности контента и способствует сохранению целостности данных ответа, доставляемого клиентам.

При корректной установке в контексте server NGINX изменяет заголовок Expires в ответе подписанного обмена, указывая фактическое время, до которого SXG больше нельзя использовать для запросов. При отсутствии этой директивы применяется значение истечения по умолчанию, которое может не соответствовать желаемой стратегии кэширования приложения, поэтому рекомендуется тщательно продумывать её конфигурацию.

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

server {
    listen 80;
    server_name example.com;

    sxg;
    sxg_expiry_seconds 3600;  # Expires in 1 hour
    sxg_certificate /path/to/certificate.pem;
    sxg_certificate_key /path/to/certificate_key.pem;
    sxg_cert_url https://example.com/cert.cbor;
    sxg_validity_url https://example.com/validity.json;
}

Убедитесь, что значение не превышает 604800 секунд, чтобы избежать ошибок конфигурации.

Перепроверьте контекст реализации; эта директива может использоваться только в контексте server.

← Ко всем директивам