Correggi NGINX Error: impossibile allocare una nuova sessione nella cache condivisa della sessione SSL "le_nginx_SSL" durante l'handshake SSL

Un tipico errore del server web con Nginx si Certbot, che ho scoperto di recente in errorlog:

[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

È un errore che si verifica sporadicamente, solo in determinati scenari e molto spesso su siti Web ad alto traffico. Numero elevato di query.

"le_nginx_SSL", come si evince dal nome, è responsabile delle sessioni SSL servite alle query. Ora in cui viene verificato il certificato SSL Let's Encrypt, installato sul server con l'aiuto certbot.

Perché l'errore NGINX "impossibile allocare una nuova sessione nella cache condivisa della sessione SSL"le_nginx_SSL"Durante l'handshaking SSL"

Le sessioni SSL di NGINX sono archiviate in una memoria condivisa per servire ogni query nel browser. Quando lo spazio allocato alla cache SSL condivisa è pieno e NGINX non riesce a liberare spazio per una nuova sessione, viene visualizzato questo messaggio di errore.

Non si tratta di uno errore critico di NGINX né ha un enorme impatto sull'esperienza dell'utente. A proposito in "error.log "è indicato con"[alert]".

Come correggere l'errore NGINX "impossibile allocare una nuova sessione nella cache condivisa della sessione SSL"le_nginx_SSL"Durante l'handshaking SSL"

Quando si installa Certbot su un server web (CentOS, Ubuntu) vengono creati diversi file di configurazione attraverso i quali il nuovo servizio responsabile dei certificati SSL (Let's Encrypt) comunica con NGINX. Uno di questi file è e options-ssl-nginx.conf. File di configurazione in cui possiamo allocare più spazio per la memoria condivisa SSL o possiamo modificare l'ora in cui una sessione SSL scade e viene eliminata automaticamente.

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

In options-ssl-nginx.conf possiamo cambiare i parametri, ma stai molto attento, perché le modifiche qui influenzeranno il rinnovo dei certificati 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;

Possiamo modificare la durata di conservazione di una sessione nella memoria condivisa condivisa per "le_nginx_SSL". Ho assegnato 10 MB per le sessioni di cache condivisa SSL, con un periodo di timeout di 1440 minuti (24 ore).

Per i siti ad alto traffico si consiglia di aumentare la cache condivisa, ma è necessario un equilibrio tra il traffico (numero di sessioni) e il tempo di memorizzazione di una sessione.

Nel mio caso, il valore cambia in "ssl_session_cache shared:le_nginx_SSL:15m".

Appassionato di tecnologia, mi piace testare e scrivere tutorial sui sistemi operativi macOS, Linux, Windows, sulla configurazione del server web WordPress, WooCommerce e LEMP (Linux, NGINX, MySQL e PHP). scrivo su StealthSettings.com dal 2006, e qualche anno dopo ho iniziato a scrivere su iHowTo.Tips tutorial e notizie sui dispositivi nell'ecosistema Apple: iPhone, iPad, Apple Guarda, HomePod, iMac, MacBook, AirPods e accessori.

Lascia un tuo commento