Nginx 1.23.0 Mainline Release – Key Changes and Bug Fixes
Version 1.23.0 of the Nginx mainline branch introduces several internal API updates, header handling improvements, bug fixes for Vary and WWW‑Authenticate headers, SSL logging level adjustments, EPOLLRDHUP handling, and corrected caching behavior for Expires and Cache‑Control headers.
Nginx 1.23.0 mainline version has been released.
Key changes include an internal API modification: header lists are now presented as linked lists.
When sending data to FastCGI, SCGI, and uwsgi back‑ends, the $r->header_in() method in ngx_http_perl_module and the variable lookups for $http_… , $sent_http_… , $sent_trailer_… , $upstream_http_… , and $upstream_trailer_… will now combine any headers that share the same name.
Bug fixes: if a backend response contains multiple Vary headers, Nginx now uses only the last one for caching; if multiple WWW-Authenticate headers are present and a 401 error is intercepted or the auth_request directive is used, Nginx sends only the first header to the client.
The logging level for “application data after close notify” SSL errors has been lowered from crit to info .
Another bug fix addresses a hang condition on Linux 2.6.17+ builds running on systems without EPOLLRDHUP (especially those using an epoll emulation layer); this issue was previously reproduced in 1.17.5 and is now resolved.
Finally, if an Expires response header disables caching, Nginx will no longer cache the response but will still honor a Cache-Control header that enables caching.
Laravel Tech Community
Specializing in Laravel development, we continuously publish fresh content and grow alongside the elegant, stable Laravel framework.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.