Skip to content

Releases: myfreeer/nginx-build-msys2

1.26.0

04 May 13:01
2a5ea27
Compare
Choose a tag to compare

Binaries

  • nginx-*-i686.exe: 32-bit nginx
  • nginx-*-i686-debug.exe: 32-bit nginx with debugging log and symbols
  • nginx-slim-*-i686.exe: 32-bit nginx without openssl
  • nginx-*-x86_64.exe: 64-bit nginx
  • nginx-*-x86_64-debug.exe: 64-bit nginx with debugging log and symbols
  • nginx-slim-*-x86_64.exe: 64-bit nginx without openssl

Sources

Nginx changelog


Changes with nginx 1.26.0                                        23 Apr 2024

    *) 1.26.x stable branch.

More changelogs


Changes with nginx 1.25.5                                        16 Apr 2024

    *) Feature: virtual servers in the stream module.

    *) Feature: the ngx_stream_pass_module.

    *) Feature: the "deferred", "accept_filter", and "setfib" parameters of
       the "listen" directive in the stream module.

    *) Feature: cache line size detection for some architectures.
       Thanks to Piotr Sikora.

    *) Feature: support for Homebrew on Apple Silicon.
       Thanks to Piotr Sikora.

    *) Bugfix: Windows cross-compilation bugfixes and improvements.
       Thanks to Piotr Sikora.

    *) Bugfix: unexpected connection closure while using 0-RTT in QUIC.
       Thanks to Vladimir Khomutov.


Changes with nginx 1.25.4                                        14 Feb 2024

    *) Security: when using HTTP/3 a segmentation fault might occur in a
       worker process while processing a specially crafted QUIC session
       (CVE-2024-24989, CVE-2024-24990).

    *) Bugfix: connections with pending AIO operations might be closed
       prematurely during graceful shutdown of old worker processes.

    *) Bugfix: socket leak alerts no longer logged when fast shutdown was
       requested after graceful shutdown of old worker processes.

    *) Bugfix: a socket descriptor error, a socket leak, or a segmentation
       fault in a worker process (for SSL proxying) might occur if AIO was
       used in a subrequest.

    *) Bugfix: a segmentation fault might occur in a worker process if SSL
       proxying was used along with the "image_filter" directive and errors
       with code 415 were redirected with the "error_page" directive.

    *) Bugfixes and improvements in HTTP/3.


Changes with nginx 1.25.3                                        24 Oct 2023

    *) Change: improved detection of misbehaving clients when using HTTP/2.

    *) Feature: startup speedup when using a large number of locations.
       Thanks to Yusuke Nojima.

    *) Bugfix: a segmentation fault might occur in a worker process when
       using HTTP/2 without SSL; the bug had appeared in 1.25.1.

    *) Bugfix: the "Status" backend response header line with an empty
       reason phrase was handled incorrectly.

    *) Bugfix: memory leak during reconfiguration when using the PCRE2
       library.
       Thanks to ZhenZhong Wu.

    *) Bugfixes and improvements in HTTP/3.


Changes with nginx 1.25.2                                        15 Aug 2023

    *) Feature: path MTU discovery when using HTTP/3.

    *) Feature: TLS_AES_128_CCM_SHA256 cipher suite support when using
       HTTP/3.

    *) Change: now nginx uses appname "nginx" when loading OpenSSL
       configuration.

    *) Change: now nginx does not try to load OpenSSL configuration if the
       --with-openssl option was used to built OpenSSL and the OPENSSL_CONF
       environment variable is not set.

    *) Bugfix: in the $body_bytes_sent variable when using HTTP/3.

    *) Bugfix: in HTTP/3.


Changes with nginx 1.25.1                                        13 Jun 2023

    *) Feature: the "http2" directive, which enables HTTP/2 on a per-server
       basis; the "http2" parameter of the "listen" directive is now
       deprecated.

    *) Change: HTTP/2 server push support has been removed.

    *) Change: the deprecated "ssl" directive is not supported anymore.

    *) Bugfix: in HTTP/3 when using OpenSSL.


Changes with nginx 1.25.0                                        23 May 2023

    *) Feature: experimental HTTP/3 support.

1.25.5

02 May 08:08
2a5ea27
Compare
Choose a tag to compare

Binaries

  • nginx-*-i686.exe: 32-bit nginx
  • nginx-*-i686-debug.exe: 32-bit nginx with debugging log and symbols
  • nginx-slim-*-i686.exe: 32-bit nginx without openssl
  • nginx-*-x86_64.exe: 64-bit nginx
  • nginx-*-x86_64-debug.exe: 64-bit nginx with debugging log and symbols
  • nginx-slim-*-x86_64.exe: 64-bit nginx without openssl

Sources

Nginx changelog


Changes with nginx 1.25.5                                        16 Apr 2024

    *) Feature: virtual servers in the stream module.

    *) Feature: the ngx_stream_pass_module.

    *) Feature: the "deferred", "accept_filter", and "setfib" parameters of
       the "listen" directive in the stream module.

    *) Feature: cache line size detection for some architectures.
       Thanks to Piotr Sikora.

    *) Feature: support for Homebrew on Apple Silicon.
       Thanks to Piotr Sikora.

    *) Bugfix: Windows cross-compilation bugfixes and improvements.
       Thanks to Piotr Sikora.

    *) Bugfix: unexpected connection closure while using 0-RTT in QUIC.
       Thanks to Vladimir Khomutov.

1.25.4

17 Mar 02:33
Compare
Choose a tag to compare

Binaries

  • nginx-*-i686.exe: 32-bit nginx
  • nginx-*-i686-debug.exe: 32-bit nginx with debugging log and symbols
  • nginx-slim-*-i686.exe: 32-bit nginx without openssl
  • nginx-*-x86_64.exe: 64-bit nginx
  • nginx-*-x86_64-debug.exe: 64-bit nginx with debugging log and symbols
  • nginx-slim-*-x86_64.exe: 64-bit nginx without openssl

Sources

Nginx changelog


Changes with nginx 1.25.4                                        14 Feb 2024

    *) Security: when using HTTP/3 a segmentation fault might occur in a
       worker process while processing a specially crafted QUIC session
       (CVE-2024-24989, CVE-2024-24990).

    *) Bugfix: connections with pending AIO operations might be closed
       prematurely during graceful shutdown of old worker processes.

    *) Bugfix: socket leak alerts no longer logged when fast shutdown was
       requested after graceful shutdown of old worker processes.

    *) Bugfix: a socket descriptor error, a socket leak, or a segmentation
       fault in a worker process (for SSL proxying) might occur if AIO was
       used in a subrequest.

    *) Bugfix: a segmentation fault might occur in a worker process if SSL
       proxying was used along with the "image_filter" directive and errors
       with code 415 were redirected with the "error_page" directive.

    *) Bugfixes and improvements in HTTP/3.

1.25.3

18 Nov 03:18
Compare
Choose a tag to compare

Binaries

  • nginx-*-i686.exe: 32-bit nginx
  • nginx-*-i686-debug.exe: 32-bit nginx with debugging log and symbols
  • nginx-slim-*-i686.exe: 32-bit nginx without openssl
  • nginx-*-x86_64.exe: 64-bit nginx
  • nginx-*-x86_64-debug.exe: 64-bit nginx with debugging log and symbols
  • nginx-slim-*-x86_64.exe: 64-bit nginx without openssl

Sources

Nginx changelog


Changes with nginx 1.25.3                                        24 Oct 2023

    *) Change: improved detection of misbehaving clients when using HTTP/2.

    *) Feature: startup speedup when using a large number of locations.
       Thanks to Yusuke Nojima.

    *) Bugfix: a segmentation fault might occur in a worker process when
       using HTTP/2 without SSL; the bug had appeared in 1.25.1.

    *) Bugfix: the "Status" backend response header line with an empty
       reason phrase was handled incorrectly.

    *) Bugfix: memory leak during reconfiguration when using the PCRE2
       library.
       Thanks to ZhenZhong Wu.

    *) Bugfixes and improvements in HTTP/3.

1.25.2

26 Aug 06:24
Compare
Choose a tag to compare

Binaries

  • nginx-*-i686.exe: 32-bit nginx
  • nginx-*-i686-debug.exe: 32-bit nginx with debugging log and symbols
  • nginx-slim-*-i686.exe: 32-bit nginx without openssl
  • nginx-*-x86_64.exe: 64-bit nginx
  • nginx-*-x86_64-debug.exe: 64-bit nginx with debugging log and symbols
  • nginx-slim-*-x86_64.exe: 64-bit nginx without openssl

Sources

Nginx changelog

Changes with nginx 1.25.2                                        15 Aug 2023

    *) Feature: path MTU discovery when using HTTP/3.

    *) Feature: TLS_AES_128_CCM_SHA256 cipher suite support when using
       HTTP/3.

    *) Change: now nginx uses appname "nginx" when loading OpenSSL
       configuration.

    *) Change: now nginx does not try to load OpenSSL configuration if the
       --with-openssl option was used to built OpenSSL and the OPENSSL_CONF
       environment variable is not set.

    *) Bugfix: in the $body_bytes_sent variable when using HTTP/3.

    *) Bugfix: in HTTP/3.

1.25.1

26 Aug 02:57
Compare
Choose a tag to compare

Binaries

  • nginx-*-i686.exe: 32-bit nginx
  • nginx-*-i686-debug.exe: 32-bit nginx with debugging log and symbols
  • nginx-slim-*-i686.exe: 32-bit nginx without openssl
  • nginx-*-x86_64.exe: 64-bit nginx
  • nginx-*-x86_64-debug.exe: 64-bit nginx with debugging log and symbols
  • nginx-slim-*-x86_64.exe: 64-bit nginx without openssl

Sources

Nginx changelog


Changes with nginx 1.25.1                                        13 Jun 2023

    *) Feature: the "http2" directive, which enables HTTP/2 on a per-server
       basis; the "http2" parameter of the "listen" directive is now
       deprecated.

    *) Change: HTTP/2 server push support has been removed.

    *) Change: the deprecated "ssl" directive is not supported anymore.

    *) Bugfix: in HTTP/3 when using OpenSSL.

1.24.0

21 May 02:04
Compare
Choose a tag to compare

Binaries

  • nginx-*-i686.exe: 32-bit nginx
  • nginx-*-i686-debug.exe: 32-bit nginx with debugging log and symbols
  • nginx-slim-*-i686.exe: 32-bit nginx without openssl
  • nginx-*-x86_64.exe: 64-bit nginx
  • nginx-*-x86_64-debug.exe: 64-bit nginx with debugging log and symbols
  • nginx-slim-*-x86_64.exe: 64-bit nginx without openssl

Sources

Nginx changelog

Changes with nginx 1.24.0                                        11 Apr 2023

    *) 1.24.x stable branch.

Full changelogs since 1.22.0


Changes with nginx 1.24.0                                        11 Apr 2023

    *) 1.24.x stable branch.


Changes with nginx 1.23.4                                        28 Mar 2023

    *) Change: now TLSv1.3 protocol is enabled by default.

    *) Change: now nginx issues a warning if protocol parameters of a
       listening socket are redefined.

    *) Change: now nginx closes connections with lingering if pipelining was
       used by the client.

    *) Feature: byte ranges support in the ngx_http_gzip_static_module.

    *) Bugfix: port ranges in the "listen" directive did not work; the bug
       had appeared in 1.23.3.
       Thanks to Valentin Bartenev.

    *) Bugfix: incorrect location might be chosen to process a request if a
       prefix location longer than 255 characters was used in the
       configuration.

    *) Bugfix: non-ASCII characters in file names on Windows were not
       supported by the ngx_http_autoindex_module, the ngx_http_dav_module,
       and the "include" directive.

    *) Change: the logging level of the "data length too long", "length too
       short", "bad legacy version", "no shared signature algorithms", "bad
       digest length", "missing sigalgs extension", "encrypted length too
       long", "bad length", "bad key update", "mixed handshake and non
       handshake data", "ccs received early", "data between ccs and
       finished", "packet length too long", "too many warn alerts", "record
       too small", and "got a fin before a ccs" SSL errors has been lowered
       from "crit" to "info".

    *) Bugfix: a socket leak might occur when using HTTP/2 and the
       "error_page" directive to redirect errors with code 400.

    *) Bugfix: messages about logging to syslog errors did not contain
       information that the errors happened while logging to syslog.
       Thanks to Safar Safarly.

    *) Workaround: "gzip filter failed to use preallocated memory" alerts
       appeared in logs when using zlib-ng.

    *) Bugfix: in the mail proxy server.


Changes with nginx 1.23.3                                        13 Dec 2022

    *) Bugfix: an error might occur when reading PROXY protocol version 2
       header with large number of TLVs.

    *) Bugfix: a segmentation fault might occur in a worker process if SSI
       was used to process subrequests created by other modules.
       Thanks to Ciel Zhao.

    *) Workaround: when a hostname used in the "listen" directive resolves
       to multiple addresses, nginx now ignores duplicates within these
       addresses.

    *) Bugfix: nginx might hog CPU during unbuffered proxying if SSL
       connections to backends were used.


Changes with nginx 1.23.2                                        19 Oct 2022

    *) Security: processing of a specially crafted mp4 file by the
       ngx_http_mp4_module might cause a worker process crash, worker
       process memory disclosure, or might have potential other impact
       (CVE-2022-41741, CVE-2022-41742).

    *) Feature: the "$proxy_protocol_tlv_..." variables.

    *) Feature: TLS session tickets encryption keys are now automatically
       rotated when using shared memory in the "ssl_session_cache"
       directive.

    *) Change: the logging level of the "bad record type" SSL errors has
       been lowered from "crit" to "info".
       Thanks to Murilo Andrade.

    *) Change: now when using shared memory in the "ssl_session_cache"
       directive the "could not allocate new session" errors are logged at
       the "warn" level instead of "alert" and not more often than once per
       second.

    *) Bugfix: nginx/Windows could not be built with OpenSSL 3.0.x.

    *) Bugfix: in logging of the PROXY protocol errors.
       Thanks to Sergey Brester.

    *) Workaround: shared memory from the "ssl_session_cache" directive was
       spent on sessions using TLS session tickets when using TLSv1.3 with
       OpenSSL.

    *) Workaround: timeout specified with the "ssl_session_timeout"
       directive did not work when using TLSv1.3 with OpenSSL or BoringSSL.


Changes with nginx 1.23.1                                        19 Jul 2022

    *) Feature: memory usage optimization in configurations with SSL
       proxying.

    *) Feature: looking up of IPv4 addresses while resolving now can be
       disabled with the "ipv4=off" parameter of the "resolver" directive.

    *) Change: the logging level of the "bad key share", "bad extension",
       "bad cipher", and "bad ecpoint" SSL errors has been lowered from
       "crit" to "info".

    *) Bugfix: while returning byte ranges nginx did not remove the
       "Content-Range" header line if it was present in the original backend
       response.

    *) Bugfix: a proxied response might be truncated during reconfiguration
       on Linux; the bug had appeared in 1.17.5.


Changes with nginx 1.23.0                                        21 Jun 2022

    *) Change in internal API: now header lines are represented as linked
       lists.

    *) Change: now nginx combines arbitrary header lines with identical
       names when sending to FastCGI, SCGI, and uwsgi backends, in the
       $r->header_in() method of the ngx_http_perl_module, and during lookup
       of the "$http_...", "$sent_http_...", "$sent_trailer_...",
       "$upstream_http_...", and "$upstream_trailer_..." variables.

    *) Bugfix: if there were multiple "Vary" header lines in the backend
       response, nginx only used the last of them when caching.

    *) Bugfix: if there were multiple "WWW-Authenticate" header lines in the
       backend response and errors with code 401 were intercepted or the
       "auth_request" directive was used, nginx only sent the first of the
       header lines to the client.

    *) Change: the logging level of the "application data after close
       notify" SSL errors has been lowered from "crit" to "info".

    *) Bugfix: connections might hang if nginx was built on Linux 2.6.17 or
       newer, but was used on systems without EPOLLRDHUP support, notably
       with epoll emulation layers; the bug had appeared in 1.17.5.
       Thanks to Marcus Ball.

    *) Bugfix: nginx did not cache the response if the "Expires" response
       header line disabled caching, but following "Cache-Control" header
       line enabled caching.

1.23.4

20 May 07:44
Compare
Choose a tag to compare

Binaries

  • nginx-*-i686.exe: 32-bit nginx
  • nginx-*-i686-debug.exe: 32-bit nginx with debugging log and symbols
  • nginx-slim-*-i686.exe: 32-bit nginx without openssl
  • nginx-*-x86_64.exe: 64-bit nginx
  • nginx-*-x86_64-debug.exe: 64-bit nginx with debugging log and symbols
  • nginx-slim-*-x86_64.exe: 64-bit nginx without openssl

Sources

Nginx changelog

Changes with nginx 1.23.4                                        28 Mar 2023

    *) Change: now TLSv1.3 protocol is enabled by default.

    *) Change: now nginx issues a warning if protocol parameters of a
       listening socket are redefined.

    *) Change: now nginx closes connections with lingering if pipelining was
       used by the client.

    *) Feature: byte ranges support in the ngx_http_gzip_static_module.

    *) Bugfix: port ranges in the "listen" directive did not work; the bug
       had appeared in 1.23.3.
       Thanks to Valentin Bartenev.

    *) Bugfix: incorrect location might be chosen to process a request if a
       prefix location longer than 255 characters was used in the
       configuration.

    *) Bugfix: non-ASCII characters in file names on Windows were not
       supported by the ngx_http_autoindex_module, the ngx_http_dav_module,
       and the "include" directive.

    *) Change: the logging level of the "data length too long", "length too
       short", "bad legacy version", "no shared signature algorithms", "bad
       digest length", "missing sigalgs extension", "encrypted length too
       long", "bad length", "bad key update", "mixed handshake and non
       handshake data", "ccs received early", "data between ccs and
       finished", "packet length too long", "too many warn alerts", "record
       too small", and "got a fin before a ccs" SSL errors has been lowered
       from "crit" to "info".

    *) Bugfix: a socket leak might occur when using HTTP/2 and the
       "error_page" directive to redirect errors with code 400.

    *) Bugfix: messages about logging to syslog errors did not contain
       information that the errors happened while logging to syslog.
       Thanks to Safar Safarly.

    *) Workaround: "gzip filter failed to use preallocated memory" alerts
       appeared in logs when using zlib-ng.

    *) Bugfix: in the mail proxy server.


1.23.3

31 Dec 03:47
Compare
Choose a tag to compare

Binaries

  • nginx-*-i686.exe: 32-bit nginx
  • nginx-*-i686-debug.exe: 32-bit nginx with debugging log and symbols
  • nginx-slim-*-i686.exe: 32-bit nginx without openssl
  • nginx-*-x86_64.exe: 64-bit nginx
  • nginx-*-x86_64-debug.exe: 64-bit nginx with debugging log and symbols
  • nginx-slim-*-x86_64.exe: 64-bit nginx without openssl

Sources

Nginx changelog

Changes with nginx 1.23.3                                        13 Dec 2022

    *) Bugfix: an error might occur when reading PROXY protocol version 2
       header with large number of TLVs.

    *) Bugfix: a segmentation fault might occur in a worker process if SSI
       was used to process subrequests created by other modules.
       Thanks to Ciel Zhao.

    *) Workaround: when a hostname used in the "listen" directive resolves
       to multiple addresses, nginx now ignores duplicates within these
       addresses.

    *) Bugfix: nginx might hog CPU during unbuffered proxying if SSL
       connections to backends were used.

1.23.2

23 Oct 11:21
Compare
Choose a tag to compare

Binaries

  • nginx-*-i686.exe: 32-bit nginx
  • nginx-*-i686-debug.exe: 32-bit nginx with debugging log and symbols
  • nginx-slim-*-i686.exe: 32-bit nginx without openssl
  • nginx-*-x86_64.exe: 64-bit nginx
  • nginx-*-x86_64-debug.exe: 64-bit nginx with debugging log and symbols
  • nginx-slim-*-x86_64.exe: 64-bit nginx without openssl

Sources

Nginx changelog

Changes with nginx 1.23.2                                        19 Oct 2022

    *) Security: processing of a specially crafted mp4 file by the
       ngx_http_mp4_module might cause a worker process crash, worker
       process memory disclosure, or might have potential other impact
       (CVE-2022-41741, CVE-2022-41742).

    *) Feature: the "$proxy_protocol_tlv_..." variables.

    *) Feature: TLS session tickets encryption keys are now automatically
       rotated when using shared memory in the "ssl_session_cache"
       directive.

    *) Change: the logging level of the "bad record type" SSL errors has
       been lowered from "crit" to "info".
       Thanks to Murilo Andrade.

    *) Change: now when using shared memory in the "ssl_session_cache"
       directive the "could not allocate new session" errors are logged at
       the "warn" level instead of "alert" and not more often than once per
       second.

    *) Bugfix: nginx/Windows could not be built with OpenSSL 3.0.x.

    *) Bugfix: in logging of the PROXY protocol errors.
       Thanks to Sergey Brester.

    *) Workaround: shared memory from the "ssl_session_cache" directive was
       spent on sessions using TLS session tickets when using TLSv1.3 with
       OpenSSL.

    *) Workaround: timeout specified with the "ssl_session_timeout"
       directive did not work when using TLSv1.3 with OpenSSL or BoringSSL.