2024#
Angie PRO 1.5.0#
Release date: 27.03.2024.
Features#
Basic support for automatically obtaining and updating certificates using the ACME protocol, configurable with the acme_client and acme directives, as well as variables of the form $acme_cert_* and $acme_cert_key_*.
A
drain
mode that switches the proxied HTTP server to a newdraining
state, when only requests bound using the sticky module are sent to the server.Configuration of automatic redirection, which adds trailing slashes to request URIs, with the auto_redirect directive.
Output statistics metrics with dates in Epoch format instead of ISO 8601 for use in Prometheus and optionally in the JSON API with the
?date=epoch
request argument.Now the
-V
switch also shows the relevant version of nginx, which is useful for compatibility with third-party utilities, certbot in particular. Thanks to AdvTechnoKing.All functionality of nginx 1.25.4.
Added packages for FreeBSD 13 (arm64), RED OS 8 (x86-64).
Dynamic module packages added:
Bugfixes#
If the SSL session reuse mechanism proxy_ssl_session_reuse was used and the list of proxied servers was dynamically updated, a leak could occur in the shared memory zone configured for the corresponding
upstream
block.
Changes#
Packages updated:
angie-pro-module-opentracing, to version 0.34.0
Updates#
16.04.2024
Dynamic module packages added:
Packages updated:
angie-pro-module-njs, to version 0.8.4
Angie PRO 1.4.1#
Release date: 15.02.2024.
Security#
When using HTTP/3, a segmentation error may have occured in a worker process while processing a specially crafted QUIC session (CVE-2024-24989); note that Angie PRO as of 1.4.0 is already not vulnerable to CVE-2024-24990.
Changes#
Dynamic module packages added:
Packages updated:
angie-pro-module-njs, to version 0.8.3
angie-pro-module-vod, to version 1.33
2023#
Angie PRO 1.4.0#
Release date: 21.12.2023.
Features#
Support for establishing HTTP/3 connections to upstream servers in the HTTP proxy module while allowing clients to use arbitrary HTTP versions. Configuration is done with the proxy_http_version directive and a set of
proxy_quic_
andproxy_http3_
directives.The upstream_probe directive to check the health of servers in the stream module’s
upstream
block by periodically creating test connections or sending datagrams.Additional
learn
mode of the sticky directive for binding sessions to proxied servers that allows to discover sessions and save them in the server’s shared memory.Waiting queue for requests that couldn’t be load-balanced on the first try, configured using the queue directive in the HTTP module’s
upstream
block.HTTP RESTful JSON interface for reconfiguring, adding, or deleting servers in the stream module’s
upstream
blocks, and the state directive for persisting these changes.Load balancing by average time to establish a connection, receive the first or last byte of a response of proxied stream upstream servers with an adjustable smoothing factor, using the least_time and response_time_factor directives in the
upstream
block.Statistics of average time to establish a connection, receive the first and last byte of a response of proxied stream upstream servers in the interface provided by the api directive, with the abitlity to adjust the average smoothing factor via the response_time_factor directive of the
upstream
block.A mechanism for smoothly bringing the proxied server online after a failure using the
slow_start
option of the server directive in theupstream
block.mqtt_preread directive in the stream module, which allows extracting the username and client id from the CONNECT packet of the MQTT protocol into the $mqtt_preread_username and $mqtt_preread_clientid variables.
Limiting the response rate of MP4 files transmission to the client proportionally to the bitrate using the mp4_limit_rate and mp4_limit_rate_after directives, which reduces the bandwidth load.
All functionality of nginx 1.25.3.
Packages for Alpine 3.19.
Bugfixes#
If a proxied server was the only one in a group, it could be incorrectly reported as
unavailable
in the statistics API even after recovery.
Changes#
Now the time of proxied server being in the
checking
state isn’t counted asdowntime
.The standard prometheus_all.conf template includes all additional Prometheus metrics and possible
state
values ofupstream
peers that are only exposed by the PRO version.Packages updated:
angie-pro-console-light, to version 1.2.0
angie-pro-module-auth-jwt, to version 0.4.0
angie-pro-module-headers-more, to version 0.36
angie-pro-module-ndk, to version 0.3.3
angie-pro-module-opentracing, to version 0.33.0
Updates#
22.01.2024
Dynamic module packages added:
Packages updated:
angie-pro-module-auth-jwt, to version 0.6.0
angie-pro-module-headers-more, to version 0.37
angie-pro-angie-pro-module-lua:
http_lua_module
, to version 0.10.26;stream_lua_module
, to version 0.0.14
Angie PRO 1.3.2#
Release date: 23.11.2023.
Bugfixes#
Active health probes with the
essential
flag incorrectly handled the server’s transition fromchecking
tounhealthy
when the initial check was failed, resulting in user requests being routed to the faulty server.possible incorrect values of metrics in Prometheus output that used variables other than
$p8s_value
for their values; in practice the issue could occur withangie_http_upstreams_peers_state
andangie_stream_upstreams_peers_state
from the standardprometheus_all.conf
template.some connection attempts to upstream servers might not have been properly accounted for in the statistics API if they failed immediately; the bug had appeared in 1.3.0.
Updates#
04.12.2023
Dynamic module packages added:
07.12.2023
Packages updated:
angie-pro-console-light — до версии 1.1.1
12.12.2023
Dynamic module packages added:
Packages updated:
angie-pro-module-auth-jwt, to version 0.4.0
angie-pro-module-headers-more, to version 0.36
angie-pro-module-ndk, to version 0.3.3
angie-pro-module-opentracing, to version 0.33.0
Angie PRO 1.3.1#
Release date: 18.10.2023.
Security#
Added extra limitations to HTTP/2 stream handling for better protection against the DoS attack known as “HTTP/2 Rapid Reset” (CVE-2023-44487).
Updates#
26.10.2023
Dynamic module packages added:
13.11.2023
Dynamic module packages added:
Packages updated:
angie-pro-console-light, to version 1.1.0
angie-pro-module-headers-more, to version 0.35
angie-pro-module-njs, to version 0.8.2
angie-pro-module-vod, to version 1.32
Angie PRO 1.3.0#
Release date: 03.10.2023.
Features#
Ability to specify multiple match patterns in the
location
directive, which allows to combine severallocation
blocks with similar settings and therefore simplify configuration by reducing duplication.Load balancing by average time to receive the response header or full response from proxied HTTP servers with an adjustable smoothing factor, using the least_time and response_time_factor directives in the
upstream
block.Export of varied statistics metrics in Prometheus format with flexible template configuration using the new prometheus and prometheus_template directives.
Statistics of average time to receive the response header and full response of proxied HTTP servers in the interface provided by the api directive, with the ability to adjust the average smoothing factor via the response_time_factor directive of the
upstream
block.Detailed information and metrics for groups of stream upstream servers in the statistics interface provided by the api directive.
The resolve option of the
server
directive in the stream module’supstream
block that allows to monitor changes to the list of IP addresses corresponding to a domain name, and automatically update it without the need of reloading configuration.The service option of the
server
directive in the stream module’supstream
block that allows to retrieve lists of addresses from DNS SRV records, with basic priority support.Support for binding a client connection to a backend server connection using the bind_conn directive in the http module’s
upstream
blocks, particularly for proxying connections with NT LAN Manager (NTLM) authentication.Access to the contents of configuration files used by the current generation of worker processes via the interface provided by the api directive with the api_config_files directive enabled.
Display of the configuration generation number in process titles, which allows to monitor the success of configuration reloads and the number of previous worker process generations using the
ps
utility.All functionality of nginx 1.25.2.
Changes#
Now appname
angie
is used when loading the OpenSSL configuration.Packages updated:
angie-pro-module-njs, to version 0.8.1
Angie PRO 1.2.0#
Release date: 15.08.2023.
Features#
HTTP RESTful JSON interface for reconfiguring, adding, or deleting servers in the HTTP module’s upstream blocks, and the state directive for persisting these changes.
The upstream_probe directive to check the health of servers in the HTTP module’s upstream block by periodically sending probe requests.
Support for cache sharding in the HTTP proxy module, which enables caching responses in different directories (drives) depending on an arbitrary response parameter, configured with variables in the new
path=
option of the proxy_cache directive.Support for NTLS in the HTTP and stream modules when using the TongSuo TLS library; the support can be enabled via the
‑‑with‑ntls
build time option and configured with the corresponding ssl_ntls and proxy_ssl_ntls directives.In the HTTP and stream proxy modules, the ability to specify multiple certificates with different types (RSA and ECDSA) and corresponding keys using the proxy_ssl_certificate and proxy_ssl_certificate_key directives.
Display of version and build name in the
master
process title, which allows to get this information about a running server instance using theps
utility.The gzip module’s ability to compress “207 Multi-Status” responses. Thanks to DBotThePony.
All functionality of nginx 1.25.0, including HTTP/3 support.
Dynamic module packages added:
Changes#
The $upstream_sticky_status variable values are now uppercase to be in line with the style of $upstream_cache_status values.
Angie PRO 1.1.0-p1#
Release date: 01.03.2023.
Features#
The sticky directive and related options in the HTTP module’s upstream block that allow to configure sticky sessions mode, where all requests of the session are routed to the same server.
The $upstream_sticky_status variable that can be either
new
,hit
ormiss
depending on the success of requesting the related upstream server with sticky sessions enabled.
Angie PRO 1.1.0#
Release date: 07.02.2023.
Features#
The api directive that provides HTTP RESTful interface for accessing in JSON or Prometheus formats basic information about a web server instance, as well as metrics of client connections, shared memory zones, DNS queries, HTTP requests, HTTP responses cache, TCP/UDP sessions of stream module, zones of limit_conn/limit_req modules, and groups of HTTP upstream servers.
The resolve option of the server directive in the HTTP module’s upstream block that allows to monitor changes to the list of IP addresses corresponding to a domain name, and automatically update it without the need of reloading configuration.
The service option of the server directive in the HTTP module’s upstream block that allows to retrieve lists of addresses from DNS SRV records, with basic priority support.
The status_zone directive in HTTP module for specifying zone to collect request metrics in server and location contexts.
The status_zone directive in stream module for specifying zone to collect TCP/UDP session metrics.
The status_zone parameter of the resolver directive for specifying zone to collect metrics on DNS queries.
autoindex uses natural sorting order for directory listings.
Arbitrary configuration of the signature on default error pages and the
Server
response header field via the server_tokens directive.The $angie_version variable with version of Angie.
All functionality of nginx 1.23.3.
Updates#
07.04.2023
Added packages for ALT Linux.
12.05.2023
Added packages for FreeBSD.
Dynamic module packages added:
26.05.2023
Added packages for Astra Linux Special Edition.
13.06.2023
Added packages for Debian 12 “Bookworm” and AlmaLinux.
12.07.2023
Dynamic module packages added:
Packages updated:
angie-pro-module-njs, to version 0.8.0
31.07.2023
Dynamic module packages added: