Kibővült az nginx 1.25.5 fő ágának kiadása, amely továbbra is új lehetőségeket fejleszt. A párhuzamosan karbantartott 1.24.x stabil ágban csak súlyos hibák és sebezhetőségek javítására vonatkozó változtatások történnek. A jövőben az 1.25.x fő ágból stabil 1.26 ág alakul majd ki. A projekt kódját C nyelven írták, és BSD licenc alatt terjesztik.
A változtatások közül:
- A stream modulban támogatás került bevezetésre virtuális szerverek, amelynek konfigurációját a „server { … }” blokkban a server_name utasítással határozzák meg. server { server_name ~^(www\.)?(.+)$; proxy_pass www.$2:12345; }
- Új ngx_stream_pass_module modul került hozzáadásra, amely a fogadott kapcsolatokat közvetlenül bármely hallgató sockethez irányítja, olyan modulokkal, mint http, stream és mail. stream { server { listen 12345 ssl; ssl_certificate domain.crt; ssl_certificate_key domain.key; pass 127.0.0.1:8000; } }
- A stream modul listen utasításában megvalósult a „deferred” (késleltetett accept engedélyezése), „accept_filter” (a bejövő kapcsolatok szűrője, amelyet az accept függvény hívása előtt alkalmaznak) és a „setfib” (irányítótábla beállítása) paraméterek támogatása.
- Bizonyos architektúrák esetében megvalósult a cache line méretének (cache line) meghatározásának támogatása, amely az CPU cache és a memória közötti adatátvitelhez szükséges.
- Apple Silicon rendszereken hozzáadva a Homebrew csomagkezelő támogatása.
- A Windows-ra való kereszthez van kapcsolatos problémák megoldva.
- Kijavították azt a hibát, amely a 0-RTT üzemmód használatakor a QUIC protokollban a kapcsolatok lezárását okozta.
Továbbá megemlíthető a FreeNginx 1.26.0 stabil verziójának nyilvánosságra hozatala, amely az Nginx forkját fejleszti. A fork fejlesztését Maxim Dunin irányítja, aki az Nginx egyik kulcsfontosságú fejlesztője. A FreeNginx egy non-profit projekt, amely az Nginx kódalap fejlesztését biztosítja a vállalati beavatkozás nélkül. Az 1.26.0 kiadást stabil kiadásként jelölték meg, amely tartalmazza a mainline ág Nginx 1.25-ös kiadásaiból származó változtatásokat és javításokat. Többek között a FreeNginx 1.26.0-ban kísérleti HTTP/3 protokoll támogatás, a DoS támadásokkal szembeni védekezés javítása, és az aszinkron I/O feldolgozással kapcsolatos hibák javítása található.
Ezzel egy időben megjelent az njs 0.8.4, a JavaScript nyelv értelmezője a webszerver nginx. Az njs értelmező megvalósítja az ECMAScript szabványokat, és lehetővé teszi a nginx képességeinek kibővítését a kérések feldolgozása érdekében konfigurációs szkriptek segítségével. A szkriptek a konfigurációs fájlban használhatók a kérés feldolgozásának kiterjesztett logikájának meghatározására, a konfiguráció generálására, a válasz dinamikus generálására, a kérés/válasz módosítására vagy gyors átmeneti megoldások létrehozására webalkalmazások problémáinak kezelésére. Az új verzióban: a CLI-hez hozzáadva a QuickJS JavaScript motor támogatása; a Server fejléc beállításának lehetősége; megvalósítva a js_set-en keresztül beállított változók duplikálásának ellenőrzése.
Forrás: opennet.ru
