ssl_session_timeout

`ssl_session_timeout` 指令在 NGINX 中设置 SSL 会话缓存的超时时间。 — NGINX HTTP Core

ssl_session_timeout
httpserver
语法ssl_session_timeout time;
默认值1h
上下文http, server
模块NGINX HTTP Core
参数1

说明

`ssl_session_timeout` 指令用于指定服务器应缓存 SSL 会话的时间。当客户端使用 SSL 连接时,可能会建立一个会话,通过重用会话参数而不是重新协商新的参数,可以提高后续连接的性能。该指令允许管理员定义缓存会话在被视为过期并从缓存中移除之前可以保持有效的时长。时间可以用单位指定,例如 `s`(秒)、`m`(分钟)或 `h`(小时),缓存机制显著提升了 SSL 协商的效率,尤其对频繁连接服务器的客户端而言。 该指令可以放在 NGINX 配置的 `http` 或 `server` 上下文中,允许根据超时是应全局生效还是仅作用于特定 `server` 块来灵活配置。适当设置此指令可以确保有效管理资源并兼顾安全性,因为较短的超时时间可能在一定程度上提高安全性,但会以牺牲性能为代价。

配置示例

server {
    listen 443 ssl;
    ssl_certificate /etc/nginx/ssl/server.crt;
    ssl_certificate_key /etc/nginx/ssl/server.key;
    ssl_session_timeout 30m;
}

将会话超时设置得过低可能导致频繁的 SSL 握手,从而引起性能下降。

在使用此指令时,请确保已启用 SSL 会话缓存,否则不会生效。