Een typische fout van webservers met Nginx En Certificaat, die ik onlangs heb ontdekt Error.log:
inhoud
[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
Het is een fout die sporadisch verschijnt, alleen in bepaalde scenario's en meestal op de websites met veel verkeer. Groot aantal ondervragingen.
“le_nginx_SSL
“, zoals u uit de naam kunt afleiden, reageren op SSL -sessies die worden ondervraagd. Gedurende welke het SSL Let's Encrypt -certificaat wordt gecontroleerd, geïnstalleerd op de server met behulp van certbot
.
Waarom verschijnt de nginx -fout “Kon geen nieuwe sessie in SSL -sessie gedeelde cache toewijzen “le_nginx_ssl” Terwijl SSL handshaking”
Nginx SSL -sessies worden in een gedeeld geheugen bewaard “deel” om elke vraag in de browser te dienen. Wanneer de ruimte toegewezen aan het gedeelde geheugen (gedeeld) SSL vol is en Nginx geen ruimte vrijgeeft voor een nieuwe sessie, verschijnt deze foutmelding.
Het gaat niet om een Fout bekritiseer ningx Het heeft ook geen grote impact op de ervaring van de gebruikers. In werkelijkheid “Error.log” wordt opgemerkt met “[alert]
“.
Hoe we de Nginx -fout oplossen “Kon geen nieuwe sessie in SSL -sessie gedeelde cache toewijzen “le_nginx_ssl” Terwijl SSL handshaking”
Wanneer we installeren Certificaat Op een webserver (CentOS, Ubuntu) worden verschillende configuratiebestanden gemaakt waardoor de nieuwe service die verantwoordelijk is voor de SSL -certificaten (laten we coderen) communiceren met Nginx. Een van deze bestanden is en options-ssl-nginx.conf
. Configuratiebestand waarin we een grotere ruimte kunnen toewijzen voor het aandelengeheugen van SSL of de tijd kunnen wijzigen waarop een SSL -sessie verloopt en automatisch wordt verwijderd.
sudo nano /etc/letsencrypt/options-ssl-nginx.conf
In options-ssl-nginx.conf
We kunnen veranderen van parameters, maar veel aandacht, omdat de veranderingen hier de vernieuwing van SSL -certificaten zullen beïnvloeden.
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;
We kunnen veranderen zolang een sessie wordt opgeslagen in gedeeld geheugen gedeeld voor “le_nginx_ssl”. Ik heb 10 MB toegewezen voor SSL's cache gedeelde sessies, met een periode van 1440 minuten (24 uur).
Voor sites met hoog verkeer wordt aanbevolen dat de gedeelde cache wordt verhoogd, maar het heeft een evenwicht nodig tussen verkeer (het aantal sessies) en de periode als sessie wordt opgeslagen.
In mijn geval werkte het om waarde te veranderen bij “ssl_session_cache shared:le_nginx_SSL:15m
“.