nginx 1.25

1.25 released 23 May 2023, latest 1.25.5.

nginx 1.25 reached end of life on 29 May 2024.

What changed

NGINX 1.25 was the mainline series that followed the earlier stable line. Its most significant addition was experimental HTTP/3 and QUIC support through the ngx_http_quic_module. Using that capability required QUIC-capable TLS build support and operational readiness for UDP traffic, rather than only the conventional TCP-based HTTPS path. The series also deprecated HTTP/2 server push and the use of the http2 parameter on a listen directive. Configurations were expected to use the separate http2 directive instead. The deprecated settings remained available during this series, but they should not be treated as a durable configuration interface.

What staying costs

NGINX 1.25 has reached end of life, so upstream fixes for defects, security issues, protocol behavior, and compatibility problems are no longer expected for this line. The risk is higher for internet-facing proxies and servers, where an unpatched HTTP, TLS, HTTP/2, or HTTP/3 issue can affect exposed traffic. Teams using its HTTP/3 implementation also remain on an experimental implementation with older integration and interoperability behavior. Deferred configuration cleanup increases migration risk: deprecated HTTP/2 syntax and server-push settings can carry forward unnoticed until a later upgrade requires changes. A distribution or commercial vendor may independently provide patches, but that must be verified for the exact packaged build rather than assumed from the NGINX version number.

What to do

Plan a move to a currently supported NGINX release line, selecting the package source and edition that your organization will maintain. Inventory compiled modules, third-party dynamic modules, TLS libraries, reverse-proxy settings, and all generated NGINX configuration before upgrading. Replace listen directives that use the deprecated http2 parameter with the separate http2 directive, and remove or redesign HTTP/2 server-push configuration because server push is deprecated. If HTTP/3 is enabled, test the target release with the intended TLS library, UDP listener and firewall rules, load balancers, Alt-Svc behavior, and real client fallback to HTTP/2 or HTTP/1.1. Run nginx -t and integration tests in a staging environment, then use a controlled rollout with configuration rollback and package rollback procedures. After the move, confirm the installed build and package repository are on a supported maintenance path.

We can tell you what moving off nginx 1.25 involves.

What it takes to move off nginx 1.25 depends on what you built on it — the version you are on, how much depends on it, and how much of the work is mechanical. Leave your email with this version and we can tell you what that looks like for you.

Not sure yet? Get my plan