Nya versioner av nginx 1.27.5, FreeNginx 1.27.6 och JavaScript-modulen njs 0.8.10

Den huvudsakliga versionen av nginx 1.27.5 har slÀppts, dÀr utvecklingen av nya möjligheter fortsÀtter. Endast Àndringar relaterade till ÄtgÀrder av allvarliga fel och sÄrbarheter tillförs den parallellt stödda stabila versionen 1.26.x. I framtiden kommer en stabil version 1.28 att bildas baserat pÄ huvudversionen 1.27.x. Projektets kod Àr skriven i C och distribueras under BSD-licens.

Bland Àndringarna i nginx 1.27.5:

  • För anslutningar som anvĂ€nder QUIC-protokollet har stöd för algoritmen CUBIC (RFC 9438) för hantering av nĂ€tverksöverbelastning lagts till. Denna algoritm ökar successivt storleken pĂ„ överbelastningsfönstret tills paketförlust intrĂ€ffar, varefter fönsterstorleken Ă„terstĂ€lls till vĂ€rdet före förlusten. I genomförda tester minskade anvĂ€ndningen av CUBIC överföringstiden för en fil pĂ„ 500 MB med 24% vid fördröjningar pĂ„ 40 ms och BDP 750K (Bandwidth Delay Product) och med 73% vid fördröjningar pĂ„ 100 ms och BDP 9M.
  • Den maximala storleken för hĂ€mtade SSL-sessioner i delat minne har ökat till 8192.
  • Byggsystemet med C-biblioteket Musl har förbĂ€ttrats.
  • Arbete har utförts för att optimera prestanda och Ă„tgĂ€rda buggar i implementeringen av HTTP/3.
  • Fel i genomförandet av direktiven "grpc_ssl_password_file", "proxy_ssl_password_file" och "uwsgi_ssl_password_file" har Ă„tgĂ€rdats, vilket uppstod vid laddning SSL-certifikat och krypteringsnycklar frĂ„n variabler.
  • Problem med att stĂ€lla in variablerna $ssl_curve och $ssl_curves vid anvĂ€ndning av anslutna implementationer av elliptiska kurvor i OpenSSL har lösts.

Dessutom kan vi notera publiceringen av stabila versioner av projektet FreeNginx 1.27.5 och 1.27.6, som utvecklar en fork av Nginx. Forken utvecklas av Maxim Dunin, en av de nyckelutvecklare inom Nginx. FreeNginx positioneras som ett icke-vinstdrivande projekt som sÀkerstÀller utvecklingen av Nginx:s kodbas utan företagsinblandning.

Ändringar i FreeNginx 1.27.5 och 1.27.6:

  • Problem vid anvĂ€ndning av OpenSSL 3.5 har lösts (namnet pĂ„ gruppen X25519MLKEM768 visades inte i variablerna $ssl_curve och $ssl_curves).
  • Ett kraschproblem i arbetsprocesser i konfigurationer med direktivet proxy_ssl_password_file har Ă„tgĂ€rdats, vilket upptrĂ€dde vid angivande av variabler i direktiven proxy_ssl_certificate och proxy_ssl_certificate_key.
  • Stödet för parametern multipath har lagts till i direktivet listen.
  • ÅteranvĂ€ndning av SSL-sessioner mellan servrar som anvĂ€nder olika certifikat i direktivet ssl_trusted_certificate har förbjudits, nĂ€r kontroll av klienternas SSL-certifikat Ă€r aktiverad.
  • Ett problem med att Ă„teranvĂ€nda sessioner i kontexten av en annan virtuell server vid anvĂ€ndning av TLSv1.3 med OpenSSL 1.1.1e+ har lösts.
  • Ett problem vid anvĂ€ndning av zlib-ng har Ă„tgĂ€rdats.

Dessutom har njs 0.8.10 slÀppts, en modul för att integrera JavaScript-tolkare i http-servern Nginx. Stöd för anslutning av olika JavaScript-motorer finns. Som bas erbjuds den egna motorn QuickJS med stöd för ECMAScript-specifikationen 2023. Njs gör det möjligt att anvÀnda JavaScript-skript i konfigurationen för att utöka Nginx möjligheter. Skripten kan anvÀndas för att definiera utvidgad logik för bearbetning av förfrÄgningar, bilda konfigurationer, dynamiskt generera svar, modifiera förfrÄgningar/svar eller snabbt skapa stubbar för att lösa problem i webapplikationer.

Ändringar i njs 0.8.10:

  • Stöd för WebCrypto API, TextEncoder och TextDecoder har lagts till i JavaScript-motorn QuickJS.
  • Nya moduler som querystring, crypto och xml har lagts till i QuickJS-motorn.
  • Stöd för QuickJS-NG-biblioteket har lagts till.
  • Modulen till Nginx har implementerat lĂ€sning av innehĂ„llet i r.requestText och r.requestBuffer frĂ„n en tillfĂ€llig fil.

KĂ€lla: opennet.ru

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster