nginx

notes:

no notes

Release list
-1.30.0
-1.29.8
-1.28.3
-1.29.7
-1.29.6
-1.29.5
-1.28.2
-1.28.1
-1.29.4
-1.29.3
6m+
-1.29.2
6m+
-1.29.1
6m+
-1.29.0
6m+
-1.28.0
1y+
-1.27.5
1y+
-1.26.3
1y+
-1.27.4
1y+
-1.27.3
1y+
-1.27.2
1y+
Release notes:

nginx-1.30.0 stable version has been released, incorporating new features and bug fixes from the 1.29.x mainline branch — including Early Hints, HTTP/2 to backend and Encrypted ClientHello, sticky sessions support for upstreams, Multipath TCP support, the default proxy HTTP version set to HTTP/1.1 with keep-alive enabled, and more.

What's Changed

  • Version bump 1.29.0 by @arut in https://github.com/nginx/nginx/pull/632
  • QUIC: silence unknown/reserved transport param "info" messages. by @arut in https://github.com/nginx/nginx/pull/633
  • Fixed -Wunterminated-string-initialization with gcc15. by @arut in https://github.com/nginx/nginx/pull/631
  • HTTP/3: fixed NGX_HTTP_V3_VARLEN_INT_LEN value. by @arut in https://github.com/nginx/nginx/pull/640
  • Win32: couple of platform detection fixes by @bavshin-f5 in https://github.com/nginx/nginx/pull/457
  • QUIC: fixed a typo. by @nandsky in https://github.com/nginx/nginx/pull/638
  • OpenSSL build fixes with various no-opt. by @pluknet in https://github.com/nginx/nginx/pull/634
  • QUIC: fixed sending acknowledgments with limited congestion window. by @pluknet in https://github.com/nginx/nginx/pull/655
  • QUIC: using QUIC API introduced in OpenSSL 3.5. by @pluknet in https://github.com/nginx/nginx/pull/646
  • SSL: support loading keys via OSSL_STORE. by @bavshin-f5 in https://github.com/nginx/nginx/pull/436
  • Core: added support for TCP keepalive parameters on macOS. by @pluknet in https://github.com/nginx/nginx/pull/709
  • HTTP Early Hints by @arut in https://github.com/nginx/nginx/pull/326
  • HTTP/3: indexed field line encoding for "103 Early Hints". by @pluknet in https://github.com/nginx/nginx/pull/746
  • Use NULL instead of 0 as null pointer constant by @ac000 in https://github.com/nginx/nginx/pull/702
  • Upstream: fixed reinit request with gRPC and Early Hints. by @pluknet in https://github.com/nginx/nginx/pull/750
  • QUIC: disabled OpenSSL 3.5 QUIC API support by default. by @pluknet in https://github.com/nginx/nginx/pull/751
  • nginx-1.29.0-RELEASE by @pluknet in https://github.com/nginx/nginx/pull/752
  • PCRE license fix for win32 zip by @pluknet in https://github.com/nginx/nginx/pull/753
  • QUIC: adjusted OpenSSL 3.5 QUIC API feature test. by @pluknet in https://github.com/nginx/nginx/pull/749
  • OPENSSL_VERSION_NUMBER fix for OpenSSL 3.0 by @pluknet in https://github.com/nginx/nginx/pull/775
  • kqueue build fixes by @pluknet in https://github.com/nginx/nginx/pull/777
  • HTTP/3: limited prefixed integers encoded length. by @pluknet in https://github.com/nginx/nginx/pull/124
  • HTTP/3: fixed handling :authority and Host with port. by @arut in https://github.com/nginx/nginx/pull/772
  • HTTP/2: fixed flushing early hints. by @arut in https://github.com/nginx/nginx/pull/808
  • HTTP/2 fixes for ":authority" vs "Host" by @pluknet in https://github.com/nginx/nginx/pull/803
  • Certificate compression by @pluknet in https://github.com/nginx/nginx/pull/788
  • Auth basic: fixed file descriptor leak on memory allocation error. by @pluknet in https://github.com/nginx/nginx/pull/833
  • smtp module fixes by @pluknet in https://github.com/nginx/nginx/pull/842
  • Changes 1.29.1 by @pluknet in https://github.com/nginx/nginx/pull/843
  • Added a previously missed changes entry in 1.29.1 relnotes. by @pluknet in https://github.com/nginx/nginx/pull/844
  • Removed legacy charset directive from default config example. by @MohamedKarrab in https://github.com/nginx/nginx/pull/829
  • QUIC: fixed ssl_reject_handshake error handling. by @pluknet in https://github.com/nginx/nginx/pull/889
  • Updated link to xslscript. by @pluknet in https://github.com/nginx/nginx/pull/854
  • Fixed inaccurate index directive error report by @willmafh in https://github.com/nginx/nginx/pull/881
  • SNI: using ClientHello callback. by @pluknet in https://github.com/nginx/nginx/pull/562
  • AWS-LC support changes by @pluknet in https://github.com/nginx/nginx/pull/848
  • Upstream: overflow detection in Cache-Control delta-seconds. by @pluknet in https://github.com/nginx/nginx/pull/898
  • Mail: xtext encoding (RFC 3461) in XCLIENT LOGIN. by @pluknet in https://github.com/nginx/nginx/pull/893
  • Added F5 CLA workflow. by @Maryna-f5 in https://github.com/nginx/nginx/pull/908
  • SSL: fixed "key values mismatch" with object cache inheritance. by @pluknet in https://github.com/nginx/nginx/pull/740
  • nginx-1.29.2 changes by @pluknet in https://github.com/nginx/nginx/pull/919
  • SSL: support for compressed server certificates with BoringSSL. by @pluknet in https://github.com/nginx/nginx/pull/823
  • HTTP CONNECT infrastructure by @arut in https://github.com/nginx/nginx/pull/935
  • Upstream: reset local address in case of error. by @arut in https://github.com/nginx/nginx/pull/942
  • SSL: $ssl_sigalg, $ssl_client_sigalg. by @pluknet in https://github.com/nginx/nginx/pull/932
  • Geo: the "volatile" parameter. by @dplotnikov-f5 in https://github.com/nginx/nginx/pull/943
  • Inheritance control for add_header and add_trailer. by @arut in https://github.com/nginx/nginx/pull/918
  • OCSP: fixed invalid type for the 'ssl_ocsp' directive. by @roman-f5 in https://github.com/nginx/nginx/pull/938
  • Fixed compilation warnings on Windows after c93a0c48af87. by @arut in https://github.com/nginx/nginx/pull/954
  • Modules compatibility: increased compat section size. by @arut in https://github.com/nginx/nginx/pull/952
  • nginx-1.29.3 changes by @arut in https://github.com/nginx/nginx/pull/953
  • Configure: ensure we get the "built by ..." line in nginx -V. by @ac000 in https://github.com/nginx/nginx/pull/905
  • Adding support for pcre 10.47 by @thierryba in https://github.com/nginx/nginx/pull/963
  • SSL: changed interface of ngx_ssl_set_client_hello_callback(). by @pluknet in https://github.com/nginx/nginx/pull/968
  • SSL: fixed build with BoringSSL, broken by 38a701d88. by @pluknet in https://github.com/nginx/nginx/pull/972
  • HTTP/2: extended guard for NULL buffer and zero length. by @pluknet in https://github.com/nginx/nginx/pull/978
  • Validate host by @pluknet in https://github.com/nginx/nginx/pull/966
  • Proxy: fixed segfault in URI change (issue #983). by @pluknet in https://github.com/nginx/nginx/pull/1004
  • OpenSSL ECH integration by @sftcd in https://github.com/nginx/nginx/pull/840
  • Update community health files by @alessfg in https://github.com/nginx/nginx/pull/727
  • SSL: avoid warning when ECH is not configured and not supported. by @QirunGao in https://github.com/nginx/nginx/pull/1011
  • Disabled bare LF in chunked transfer encoding. by @pluknet in https://github.com/nginx/nginx/pull/1016
  • HTTP/2 to upstream by @hongzhidao in https://github.com/nginx/nginx/pull/771
  • Quic: fixed segfault on handshake failure by @jeniksv in https://github.com/nginx/nginx/pull/1022
  • nginx-1.29.4-RELEASE by @pluknet in https://github.com/nginx/nginx/pull/1023
  • Fixed duplicate ids in the bug report template. by @bavshin-f5 in https://github.com/nginx/nginx/pull/1035
  • SSL: logging level of the "ech_required" TLS alert. by @arut in https://github.com/nginx/nginx/pull/1038
  • Win32: fixed C4319 warning with MSVC x86. by @bavshin-f5 in https://github.com/nginx/nginx/pull/1057
  • Add a HTTP_HOST parameter to default_params. by @ac000 in https://github.com/nginx/nginx/pull/1031
  • Year 2026. by @pluknet in https://github.com/nginx/nginx/pull/1076
  • Range filter: reasonable limit on multiple ranges. by @pluknet in https://github.com/nginx/nginx/pull/1075
  • Misc: moved documentation in generated ZIP archive. by @pluknet in https://github.com/nginx/nginx/pull/1078
  • Docs: Clarify -t option behavior in nginx man page by @uhliarik in https://github.com/nginx/nginx/pull/1089
  • Proxy v2 request body fixes. by @pluknet in https://github.com/nginx/nginx/pull/1058
  • Updated OpenSSL and PCRE used for win32 builds. by @arut in https://github.com/nginx/nginx/pull/1111
  • Upstream read before write by @arut in https://github.com/nginx/nginx/pull/1112
  • nginx-1.29.5-RELEASE by @arut in https://github.com/nginx/nginx/pull/1113
  • Version bump. by @arut in https://github.com/nginx/nginx/pull/1120
  • Proxy: fixed HTTP/2 upstream with caching enabled. by @hongzhidao in https://github.com/nginx/nginx/pull/1119
  • Fixed separator in parsing header lines with multiple values. by @VadimZhestikov in https://github.com/nginx/nginx/pull/1056
  • SCGI: fixed passing CONTENT_LENGTH in unbuffered mode. by @pluknet in https://github.com/nginx/nginx/pull/1118
  • Mp4: validate sync sample values in stss atom. by @CodeByMoriarty in https://github.com/nginx/nginx/pull/1147
  • Resolver: fixed off-by-one read in ngx_resolver_copy(). by @arut in https://github.com/nginx/nginx/pull/1152
  • QUIC Stateless Reset improvements by @pluknet in https://github.com/nginx/nginx/pull/1151
  • QUIC: fixed bpf compilation with newer Linux kernels. by @arut in https://github.com/nginx/nginx/pull/215
  • Updating welcome page with links and more details. by @buulam in https://github.com/nginx/nginx/pull/1138
  • QUIC: worker-bound stateless reset tokens. by @arut in https://github.com/nginx/nginx/pull/1159
  • QUIC: handle compat keylog callback errors by @lukefr09 in https://github.com/nginx/nginx/pull/1155
  • Added an option to skip the F5 CLA workflow. by @alessfg in https://github.com/nginx/nginx/pull/1153
  • IMAP bugfixes. by @pluknet in https://github.com/nginx/nginx/pull/1161
  • Upstream: added sticky sessions support for upstreams. by @bavshin-f5 in https://github.com/nginx/nginx/pull/1167
  • nginx-1.29.6 changes by @pluknet in https://github.com/nginx/nginx/pull/1177
  • Version bump 1.29.7. by @arut in https://github.com/nginx/nginx/pull/1181
  • Proxy authentication definitions. by @arut in https://github.com/nginx/nginx/pull/1178
  • Proxy: reset pending control frames on HTTP/2 upstream reinit. by @devnexen in https://github.com/nginx/nginx/pull/1135
  • gRPC: reset buffer chains on upstream reinit. by @devnexen in https://github.com/nginx/nginx/pull/1136
  • Multipath TCP support by @pluknet in https://github.com/nginx/nginx/pull/931
  • Logs: added COMPAT padding to ngx_log_t. by @dplotnikov-f5 in https://github.com/nginx/nginx/pull/1196
  • Upstream keepalive: enabled keepalive module by default. by @roman-f5 in https://github.com/nginx/nginx/pull/1080
  • Upstream keepalive: fixed parameter parsing. by @arut in https://github.com/nginx/nginx/pull/1207
  • Mp4: avoid zero size buffers in output. by @arut in https://github.com/nginx/nginx/pull/1149
  • Mp4: fixed possible integer overflow on 32-bit platforms. by @arut in https://github.com/nginx/nginx/pull/1209
  • Dav: destination length validation for COPY and MOVE. by @arut in https://github.com/nginx/nginx/pull/1210
  • Mail: host validation. by @arut in https://github.com/nginx/nginx/pull/1211
  • Mail: fixed clearing s->passwd in auth http requests. by @arut in https://github.com/nginx/nginx/pull/1212
  • Stream: fixed client certificate validation with OCSP. by @arut in https://github.com/nginx/nginx/pull/1213
  • nginx-1.29.7-RELEASE by @arut in https://github.com/nginx/nginx/pull/1215
  • Fixed the "include" directive inside the "geo" block. by @jimf5 in https://github.com/nginx/nginx/pull/1184
  • SSL: compatibility with OpenSSL 4.0. by @pluknet in https://github.com/nginx/nginx/pull/1183
  • Update CONTRIBUTING.md by @xuruidong in https://github.com/nginx/nginx/pull/1195
  • Upstream: fixed processing multiple 103 (early hints) responses. by @pluknet in https://github.com/nginx/nginx/pull/1241
  • Removed CLOCK_MONOTONIC_FAST support. by @jimf5 in https://github.com/nginx/nginx/pull/1243
  • Upstream: fix integer underflow in charset parsing by @DavidKorczynski in https://github.com/nginx/nginx/pull/1170
  • Added max_headers directive by @dekobon in https://github.com/nginx/nginx/pull/1116
  • fix $request_port / $is_request_port being empty if auth_request is used by @Zoey2936 in https://github.com/nginx/nginx/pull/1248
  • Upstream: reset early_hints_length on upstream reinit. by @devnexen in https://github.com/nginx/nginx/pull/1187
  • nginx-1.29.8-RELEASE by @pluknet in https://github.com/nginx/nginx/pull/1252
  • nginx-1.30.0-RELEASE by @pluknet in https://github.com/nginx/nginx/pull/1268

New Contributors

  • @MohamedKarrab made their first contribution in https://github.com/nginx/nginx/pull/829
  • @willmafh made their first contribution in https://github.com/nginx/nginx/pull/881
  • @dplotnikov-f5 made their first contribution in https://github.com/nginx/nginx/pull/943
  • @roman-f5 made their first contribution in https://github.com/nginx/nginx/pull/938
  • @sftcd made their first contribution in https://github.com/nginx/nginx/pull/840
  • @alessfg made their first contribution in https://github.com/nginx/nginx/pull/727
  • @QirunGao made their first contribution in https://github.com/nginx/nginx/pull/1011
  • @hongzhidao made their first contribution in https://github.com/nginx/nginx/pull/771
  • @jeniksv made their first contribution in https://github.com/nginx/nginx/pull/1022
  • @uhliarik made their first contribution in https://github.com/nginx/nginx/pull/1089
  • @VadimZhestikov made their first contribution in https://github.com/nginx/nginx/pull/1056
  • @CodeByMoriarty made their first contribution in https://github.com/nginx/nginx/pull/1147
  • @buulam made their first contribution in https://github.com/nginx/nginx/pull/1138
  • @lukefr09 made their first contribution in https://github.com/nginx/nginx/pull/1155
  • @devnexen made their first contribution in https://github.com/nginx/nginx/pull/1135
  • @jimf5 made their first contribution in https://github.com/nginx/nginx/pull/1184
  • @xuruidong made their first contribution in https://github.com/nginx/nginx/pull/1195
  • @DavidKorczynski made their first contribution in https://github.com/nginx/nginx/pull/1170
  • @dekobon made their first contribution in https://github.com/nginx/nginx/pull/1116
  • @Zoey2936 made their first contribution in https://github.com/nginx/nginx/pull/1248

Full Changelog: https://github.com/nginx/nginx/compare/release-1.28.3...release-1.30.0

Copyright © 2023 - All right reserved by Yadoc SAS