Pas 13 muajsh zhvillimi lirohet dega e re stabile Server HTTP me performancë të lartë dhe server proxy me shumë protokolle nginx 1.22.0, i cili përfshin ndryshimet e grumbulluara në degën kryesore 1.21.x.
Në të ardhmen, të gjitha ndryshimet në degën e qëndrueshme 1.22 do të lidhen me korrigjimin e gabimeve dhe dobësi serioze. Së shpejti do të formohet dega kryesore e nginx 1.23, në të cilën do të vazhdojë zhvillimi i veçorive të reja.
Për përdoruesit e zakonshëm që nuk kanë për detyrë të sigurojnë përputhshmëri me modulet e palëve të treta, rekomandohet përdorimi i degës kryesore, bazuar në të cilën versionet e produktit tregtar Nginx Plus formohen çdo tre muaj.
Lajmet kryesore në nginx 1.22.0
Në këtë version të ri të nginx 1.22.0 që është paraqitur, Mbrojtje e përmirësuar kundër sulmeve të klasës së Kërkesës së Kontrabandës HTTP në sistemet front-end-backend që ju lejojnë të aksesoni përmbajtjen e kërkesave të përdoruesve të tjerë të përpunuara në të njëjtin thread midis front-end dhe back-end. Nginx tani kthen gjithmonë një gabim kur përdor metodën CONNECT; duke specifikuar njëkohësisht titujt "Gjatësia e Përmbajtjes" dhe "Transfer-Enkodimi"; kur ka hapësira ose karaktere kontrolli në vargun e pyetjes, emrin e kokës HTTP ose vlerën e titullit "Host".
Një tjetër risi që bie në sy në këtë version të ri është ajo shtoi mbështetje për variabla në direktiva "proxy_ssl_certificate", "proxy_ssl_certificate_key", "grpc_ssl_certificate", "grpc_ssl_certificate_key", "uwsgi_ssl_certificate" dhe "uwsgi_ssl_certificate_key".
Përveç kësaj, theksohet gjithashtu se është shtuar mbështetje për modalitetin "pipelining". për të dërguar kërkesa të shumta POP3 ose IMAP në të njëjtën lidhje në modulin e përfaqësuesit të postës, si dhe një direktivë të re "max_errors" që specifikon numrin maksimal të gabimeve të protokollit pas të cilit lidhja do të mbyllet.
Headers "Auth-SSL-Protocol" dhe "Auth-SSL-Cipher" kalohen në serverin e vërtetimit të përfaqësuesit të postës, plus mbështetje për zgjerimin ALPN TLS iu shtua modulit të transmetimit. Për të përcaktuar listën e protokolleve ALPN të mbështetura (h2, http/1.1), propozohet direktiva ssl_alpn dhe për të marrë informacion rreth protokollit ALPN të rënë dakord me klientin, ndryshorja $ssl_alpn_protocol.
Nga ndryshimet e tjera që bien në sy:
- Bllokimi i kërkesave HTTP/1.0 që përfshijnë kokën HTTP "Transfer-Encoding" (prezantuar në versionin e protokollit HTTP/1.1).
- Platforma FreeBSD ka përmirësuar mbështetjen për thirrjen e sistemit sendfile, e cila është krijuar për të orkestruar një transferim të drejtpërdrejtë të të dhënave midis një përshkruesi skedari dhe një foleje. Modaliteti sendfile(SF_NODISKIO) është aktivizuar përgjithmonë dhe është shtuar mbështetja për modalitetin sendfile(SF_NOCACHE).
- Parametri "fastopen" është shtuar në modulin e transmetimit, i cili mundëson modalitetin "TCP Fast Open" për prizat e dëgjimit.
- Rregullohet ikja e karaktereve """, "<", ">", "\", "^", "`", "{", "|" dhe "}" kur përdorni proxy me ndryshim URI.
- Direktiva proxy_half_close është shtuar në modulin e transmetimit, me të cilin mund të konfigurohet sjellja kur një lidhje TCP proxy mbyllet në njërën anë ("TCP gjysmë mbyllje").
- Shtoi një direktivë të re mp4_start_key_frame në modulin ngx_http_mp4_module për të transmetuar një video nga një kornizë kyçe.
- U shtua ndryshorja $ssl_curve për të kthyer llojin e kurbës eliptike të zgjedhur për negocimin e çelësit në një seancë TLS.
- Direktiva sendfile_max_chunk ndryshoi vlerën e paracaktuar në 2 megabajt;
- Mbështetja e ofruar me bibliotekën OpenSSL 3.0. Mbështetje e shtuar për thirrjen e SSL_sendfile() kur përdorni OpenSSL 3.0.
- Asambleja me bibliotekën PCRE2 është aktivizuar si parazgjedhje dhe ofron funksione për përpunimin e shprehjeve të rregullta.
- Kur ngarkoni certifikatat e serverit, është rregulluar përdorimi i niveleve të sigurisë të mbështetura që nga OpenSSL 1.1.0 dhe të vendosura nëpërmjet parametrit "@SECLEVEL=N" në direktivën ssl_ciphers.
- Mbështetja e paketës së shifrave të eksportit u hoq.
- Në API-në e filtrimit të trupit të kërkesës, lejohet buferimi i të dhënave të përpunuara.
- U hoq mbështetja për vendosjen e lidhjeve HTTP/2 duke përdorur shtesën NPN (Negocimi i Protokollit tjetër) në vend të ALPN.
Më në fund nëse jeni të interesuar të dini më shumë për të, ju mund të kontrolloni detajet Në lidhjen vijuese.