On välja antud peamise haru nginx 1.25.5 väljaanne, mille raames jätkub uute võimaluste arendamine. Samal ajal toetatud stabiilses harus 1.24.x viiakse läbi ainult tõsiste vigade ja haavatavuste kõrvaldamisega seotud muudatusi. Edaspidi koostatakse põhiharust 1.25.x stabiilne haru 1.26. Projektikood on kirjutatud C keeles ja jagatakse BSD litsentsi alusel.
Muudatuste hulgas:
- Moduuli stream on lisatud tugi virtuaalservereid, mille konfiguratsioon määratakse plokis «server { … }» direktiivi server_name abil. server { server_name ~^(www\.)?(.+)$; proxy_pass www.$2:12345; }
- Uus moodul ngx_stream_pass_module on lisatud, mis on mõeldud vastuvõetud ühenduste edastamiseks otse igasse kuulavasse soketti, mis on seotud selliste moodulitega nagu http, stream ja mail. stream { server { listen 12345 ssl; ssl_certificate domain.crt; ssl_certificate_key domain.key; pass 127.0.0.1:8000; } }
- Mooduli stream direktiivis listen on rakendatud toetust parameetritele «deferred» (lülitab sisse viivitusega accept), «accept_filter» (sisseande ühenduste filter, mis rakendatakse enne accept funktsiooni kutsumist) ja «setfib» (marsruutimistabeli määramine).
- Mõne arhitektuuri puhul on rakendatud ploki (cache line) suuruse määramise tuge, mida kasutatakse andmete edastamiseks CPU vahemälu ja mälu vahel.
- Apple Siliconi süsteemidesse on lisatud Homebrew pakihalduri tugi.
- Rohkemate probleemide lahendamine Windowsi ristkompileerimise osas.
- Parandatud viga, mis põhjustas ühenduste sulgemise 0-RTT režiimi kasutamisel QUIC-protokollis.
Lisaks tasub mainida FreeNginx 1.26.0 stabiilse versiooni avaldamist, mis on Nginx'i arendav fork. Forki arendamist juhib Maxim Dunin, üks Nginx'i peamisi arendajaid. FreeNginx positsioneeritakse kui mittetulunduslik projekt, mis tagab Nginx'i koodibaasi arendamise ilma ettevõtete sekkumiseta. Väljaanne 1.26.0 on märgitud stabiilse väljaandena, mis sisaldab muutusi ja parandusi Nginx 1.25 peajoonest. FreeNginx 1.26.0 hulka kuuluvad muu hulgas eksperimentaalne HTTP/3 protokolli tugi, täiustused DoS-rünnakute tõrjeks ja parandused, mis on seotud asünkroonse sisendi/väljundi töötlemisega.
Samaaegne njs 0.8.4, JavaScripti keele tõlkija, väljalaskmine. veebiserver nginx. NJS tõlgendaja implementeerib ECMAScripti standardid ja võimaldab nginxil laiendada päringute töötlemise võimeid skriptide abil konfigureerimises. Skripte saab kasutada konfiguratsioonifailis laiendatud päringute töötlemise loogika määratlemiseks, konfiguratsiooni genereerimiseks, dünaamiliseks vastuse genereerimiseks, päringu/vastuse muutmiseks või probleemide lahendamiseks veebirakendustes stubbide kiireks loomiseks. Uues versioonis: CLI-s on lisatud tugi JavaScripti mootori QuickJS jaoks; võimalus seadistada Server päis; rakendatud muutuja dubleerimise kontroll, mis on määratud js_set kaudu.
Allikas: opennet.ru
