Khắc phục lỗi nginx: Không thể phân bổ phiên mới trong bộ đệm được chia sẻ phiên SSL “le_nginx_ssl” Trong khi bắt tay SSL

Một lỗi điển hình của các máy chủ web với NginxCertbot, mà gần đây tôi đã phát hiện ra trong Lỗi.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

Đó là một lỗi xuất hiện lẻ tẻ, chỉ trong một số kịch bản nhất định và hầu hết thời gian trên các trang web có lưu lượng truy cập cao. Số lượng lớn các cuộc thẩm vấn.

le_nginx_SSL“, vì bạn có thể suy luận từ tên, trả lời các phiên SSL được phục vụ cho các cuộc thẩm vấn. Trong thời gian đó, SSL hãy kiểm tra chứng chỉ mã hóa, được cài đặt trên máy chủ với sự trợ giúp của certbot.

Tại sao lỗi nginx xuất hiện “Không thể phân bổ phiên mới trong bộ đệm chia sẻ phiên SSL “le_nginx_ssl” Trong khi bắt tay SSL”

Các phiên SSL nginx được giữ trong bộ nhớ chia sẻ “chia sẻ” Để phục vụ mọi truy vấn trong trình duyệt. Khi không gian được phân bổ cho bộ nhớ chia sẻ (chia sẻ) SSL đã đầy và Nginx không thể phát hành không gian cho một phiên mới, thông báo lỗi này sẽ xuất hiện.

Nó không phải là về một Lỗi chỉ trích Ningx Nó cũng không có tác động lớn đến trải nghiệm của người dùng. Trong thực tế “Lỗi.log” được ghi nhận với “[alert]“.

Cách chúng tôi giải quyết lỗi nginx “Không thể phân bổ phiên mới trong bộ đệm chia sẻ phiên SSL “le_nginx_ssl” Trong khi bắt tay SSL”

Khi chúng tôi cài đặt Certbot Trên một máy chủ web (Centos, Ubuntu), một số tệp cấu hình được tạo thông qua đó dịch vụ mới chịu trách nhiệm cho các chứng chỉ SSL (Let's Encrypt) giao tiếp với Nginx. Một trong những tệp này là và options-ssl-nginx.conf. Tệp cấu hình trong đó chúng tôi có thể phân bổ một không gian lớn hơn cho bộ nhớ chia sẻ của SSL hoặc thay đổi thời gian khi phiên SSL hết hạn và được tự động xóa.

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

TRONG options-ssl-nginx.conf Chúng tôi có thể thay đổi từ các tham số, nhưng sự chú ý lớn, bởi vì những thay đổi ở đây sẽ ảnh hưởng đến việc gia hạn chứng chỉ 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;

Chúng ta có thể thay đổi miễn là một phiên được lưu trữ trong bộ nhớ chung được chia sẻ “le_nginx_ssl”. Tôi đã phân bổ 10 MB cho các phiên chia sẻ bộ đệm của SSL, với khoảng thời gian 1440 phút (24 giờ).

Đối với các trang web có lưu lượng truy cập cao, nên tăng bộ nhớ cache được chia sẻ, nhưng nó cần sự cân bằng giữa lưu lượng (số phiên) và khoảng thời gian như một phiên sẽ được lưu trữ.

Trong trường hợp của tôi, nó đã hoạt động để thay đổi giá trị tại “ssl_session_cache shared:le_nginx_SSL:15m“.

Đam mê về công nghệ, tôi viết với niềm vui trên sthealthsetts.com bắt đầu từ năm 2006. Tôi có trải nghiệm phong phú trong các hệ điều hành: MacOS, Windows và Linux, nhưng cũng trong các ngôn ngữ lập trình và nền tảng blog (WordPress) và cho các cửa hàng trực tuyến (WooC Commerce, Magento, Presashop).

Trang chủ Nguồn hướng dẫn của nó, các mẹo và tin tức hữu ích. Khắc phục lỗi nginx: Không thể phân bổ phiên mới trong bộ đệm được chia sẻ phiên SSL “le_nginx_ssl” Trong khi bắt tay SSL
Để lại một bình luận