修复 NGINX Error: 无法分配新会话 SSL 会话共享缓存“le_nginx_SSL”而 SSL 握手

一个典型的 Web 服务器错误 NGINX si Certbot,我最近在 error.LOG:

[alert] 19765#19765: *151498 could not allocate new session in SSL session shared cache "le_nginx_SSL" while SSL handshaking, client: ip.ip.ip.ip, server: 0.0.0.0:443

这是偶尔发生的错误,仅在某些情况下,最常见于高流量网站。 大量查询。

le_nginx_SSL",从名字就可以推断出来,负责sessions SSL 接受审讯。 证书也被验证的时间 SSL Let's Encrypt,在服务器的帮助下安装 certbot.

为什么 NGINX 错误“无法在 SSL 会话共享缓存“le_nginx_SSL”而 SSL 握手”

会话 SSL NGINX 的一部分存储在共享内存中,以便与浏览器中的每个查询共享。 当空间分配给共享内存(shared)缓存 SSL 已满且 NGINX 无法为新会话释放空间,则会出现此错误消息。

这不是关于一个 NGINX 的严重错误 也不会对用户体验产生巨大影响。 顺便说一下“error.log ”表示为“[alert]“。

如何修复 NGINX 错误“无法在其中分配新会话” SSL 会话共享缓存“le_nginx_SSL”而 SSL 握手”

当您安装 Certbot 在网络服务器上(CentOS, Ubuntu) 都创建了几个配置文件,新服务通过这些配置文件负责证书 SSL (Let's Encrypt) 与 NGINX 通信。 这些文件之一是和 options-ssl-nginx.conf. 我们可以在其中为内存共享分配更多空间的配置文件 SSL 或者我们可以更改会话的时间 SSL 过期并被自动删除。

sudo nano /etc/letsencrypt/options-ssl-nginx.conf

In options-ssl-nginx.conf 我们可以更改参数,但是要非常小心,因为这里的更改会影响证书的更新 SSL.

ssl_session_cache shared:le_nginx_SSL:10m;
ssl_session_timeout 1440m;
ssl_session_tickets off;

ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers off;

我们可以为“le_nginx_”更改会话在共享内存中的存储时间。SSL”。 我为共享缓存会话分配了 10 MB SSL,超时时间为 1440 分钟(24 小时)。

对于高流量站点,建议增加共享缓存,但需要在流量(会话数)和会话存储时间之间取得平衡。

在我的情况下,值在“ssl_session_cache shared:le_nginx_SSL:15m“。

作为科技爱好者,我从2006年开始在StealthSettings.com上愉快地撰写文章。我在操作系统方面有丰富的经验,包括macOS、Windows和Linux,还熟悉编程语言和博客平台(WordPress),以及在线商店平台(WooCommerce、Magento、PrestaShop)。

如何以 » Linux » 修复 NGINX Error: 无法分配新会话 SSL 会话共享缓存“le_nginx_SSL”而 SSL 握手
发表评论