修復 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“。

對技術充滿熱情,我很高興寫 StealthSettings.com 自 2006 年起。我在作業系統方面擁有豐富的經驗: macOS, Windows 對 Linux,而且還包括程式語言和部落格平台(WordPress)和線上商店(WooCommerce、Magento、PrestaShop)。

如何 » Linux » 修復 NGINX Error: 無法分配新會話 SSL 會話共享緩存“le_nginx_SSL“ 儘管 SSL 握手
發表評論