sxg_expiry_seconds

为签名的 HTTP 交换 (SXG) 设置过期时间(以秒为单位)。

语法sxg_expiry_seconds seconds;
默认值86400
上下文server
参数1

说明

sxg_expiry_seconds 指令指定由 NGINX 生成的签名 HTTP 交换 (SXG) 的有效期,决定这些交换在过期前保持有效的时长。该指令对缓存机制尤为重要,有助于确保用户获得最新内容,而不会依赖已过期的签名。

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 上下文中使用。

← 返回所有指令