Den nya versionen av den högpresterande HTTP-servern och multiprotokollproxyservern Angie 1.8.0 har presenterats. Den Àr avknoppad frÄn Nginx av en grupp tidigare utvecklare frÄn projektet som lÀmnade F5 Networks. KÀllkoden för Angie Àr tillgÀnglig under BSD-licensen. Projektet har fÄtt certifikat för kompatibilitet med de ryska operativsystemen Red OS, Astra Linux Special Edition, Rosa Chrome Server, Alt och FSTEC-versionerna av Alt.
Utvecklingen övervakas av företaget "Web-server", som grundades hösten 2022 och har fÄtt en investering pÄ 1 miljon dollar. Bland delÀgarna i Web-server finns: Valentin Barteniev (teamledare för Nginx Unit-projektet), Ivan Polujanov (tidigare ledare för frontend-utvecklarna pÄ Rambler och Mail.Ru), Oleg Mamonov (ledare för teknisk support pÄ NGINX Inc) och Ruslan Ermilov (ru@FreeBSD.org).
Ăndringar i Angie 1.8.0:
- Möjligheterna för modulen http_acme, som automatiserar mottagning och uppdatering av certifikat frÄn certifikatutfÀrdaren Let's Encrypt, som anvÀnder protokollet ACME (Automatic Certificate Management Environment), har utvidgats:
- Stöd för DNS-01 verifieringsmetoden har lagts till, vilket Àr nödvÀndigt för att fÄ certifikat med maskar som omfattar en grupp av underdomÀner (t.ex. *.example.com).
- Direktivet "acme_hook" har lagts till, vilket gör det möjligt att konfigurera anrop av externa applikationer med processhanterare för att bekrÀfta domÀntillhörighet. SÄdana hanterare kan anvÀndas för integration med externa tjÀnster och DNS-leverantörer.
- Ytterligare information har lagts till i loggen för att förenkla felsökning, sÄsom orsaken till certifikatuppdateringen, en fullstÀndig lista domÀner, klientkontots identifierare, information om inaktivitet och den kontrollerade domÀnen.
- Parametern "account_key" har lagts till i direktivet "acme_client" för att ÄteranvÀnda den befintliga Ätkomstnyckeln för servern ACME, istÀllet för att automatiskt generera en ny nyckel.
- Möjligheten att ange variabler i direktivet "status_zone", som anvÀnds i modulerna stream och http, har implementerats. Variabler kan anvÀndas för att dynamiskt rÀkna statistik kopplad till specifika virtuella vÀrdar, definierade inom ett enda "location" eller "server" block. server { listen 80; server_name *.example.com; status_zone $host zone=host_zone:10; location / { proxy_pass http://example.com; } }
- I gzip-komprimeringsmodulen har kompatibilitet med zlib-ng 2.2 och nyare versioner sÀkerstÀllts.
- Implementeringen av direktivet max_headers har flyttats frÄn projektet freenginx, vilket begrÀnsar det maximala antalet HTTP-rubriker i en begÀran, vilket kan vara vÀrdefullt för att skydda mot DoS-attacker.
- Direktiven http3_max_table_capacity och proxy_http3_max_table_capacity har lagts till för att begrÀnsa storleken pÄ tabellen som anvÀnds för att komprimera rubriker i HTTP/3.
- Stöd för korskompilering har lagts till - byggprocessen kan nu genomföras utan att behöva köra autotest-skript pÄ mÄllandsplattformen.
- Ăndringen frĂ„n freenginx har överförts, vilket löser problemet med felaktig leverans av svar vid mjuk avstĂ€ngning av processbehandlare - keep-alive-anslutningar stĂ€ngs nu endast efter att tidsgrĂ€nsen angiven i direktivet lingering_timeout har passerat.
- För att fÄ aktuella vÀrden nÀr man anvÀnder virtuella vÀrdar har cachen för variablerna $ssl_server_name, $ssl_server_cert_type, $ssl_preread_protocol och $ssl_preread_server_name stÀngts av i stream-modulen.
- Ăndringar som föreslagits i version nginx 1.27.3 har överförts frĂ„n nginx-projektets repository.
KĂ€lla: opennet.ru
