Nginx 1.26.0 on vÀlja antud HTTP/3 toega

PĂ€rast aastast arendustööd on avaldatud kĂ”rge jĂ”udlusega HTTP-serveri ja mitme protokolli puhverserveri nginx 1.26.0 uus stabiilne haru, mis sisaldab pĂ”hiharus 1.25.x kogutud muudatusi. Edaspidi on kĂ”ik stabiilse haru 1.26 muudatused seotud tĂ”siste vigade ja haavatavuste kĂ”rvaldamisega. Peagi moodustub nginx 1.27 pĂ”hiharu, milles jĂ€tkub uute funktsioonide arendamine. Tavakasutajatel, kellel pole ĂŒlesannet tagada ĂŒhilduvus kolmandate osapoolte moodulitega, on soovitatav kasutada pĂ”hiharu, mille alusel koostatakse iga kolme kuu tagant kommertstoote Nginx Plus vĂ€ljalasked.

Netcrafti mÀrtsikuu raporti kohaselt töötab Nginxi umbes 243 miljonil veebisaidil (aasta tagasi 289 miljonit). Nginxi kasutatakse 18.15% kÔigist aktiivsetest saitidest (aasta tagasi 18.94%, kaks aastat tagasi 20.08%), mis vastab populaarsuselt teisele kohale selles kategoorias (Apache osakaal 20.09% (aasta tagasi 20.52, kaks aastat tagasi). tagasi 22.58%), Cloudflare - 14.12% (11.32%, 10.42%), Google - 10.41% (9.89%, 8.89%). Samal ajal sÀilitab nginx oma liidripositsiooni ja hÔivab 22.31% turust. (aasta tagasi 25.94%, kaks aastat tagasi - 31.13%), samas kui Apache osakaal vastab 20.17% (20.58, 23.08%), Cloudflare - 11.24% (10.17, 5.49%), OpenResty (nginx ja LuaJIT.7.93 platvorm7.94) -8.01 % (XNUMX%, XNUMX%).

Maailma miljoni enimkĂŒlastatud saidi hulgas on nginxi osakaal 20.63% (aasta tagasi 21.37%, kaks aastat tagasi 21.79%), Cloudflare'i - 22.59% (aasta tagasi 21.62%)), Apache httpd - 20.09% (21.18%). %). W3Techsi andmetel kasutatakse nginxi 34.3% enimkĂŒlastatud miljonist saidist, eelmise aasta aprillis oli see nĂ€itaja 34.5%, ĂŒle-eelmisel aastal 33.1%. Apache’i aktsia langes aastaga 32.2%-lt 30.1%-le ja Microsoft IIS-i osakaal langes 5.6%-lt 4.8%-le. Node.js’i osakaal kasvas 2.4%-lt 3.2%-le ja LiteSpeedi osakaal 11.8%-lt 12.9%-le.

MĂ€rkimisvÀÀrseimad tĂ€iustused, mis on lisatud 1.25.x ĂŒlesvoolu haru arendamise kĂ€igus:

  • Lisatud ngx_http_v3 moodul eksperimentaalse toega HTTP/3 protokollile. Mooduli koostamiseks pakutakse valikut “--with-http_v3_module”. HTTP/3 mÀÀratleb protokolli QUIC (Quick UDP Internet Connections) kasutamise HTTP/2 transpordina. QUIC on UDP-protokolli laiendus, mis toetab mitme ĂŒhenduse multipleksimist ja pakub TLS/SSL-iga samavÀÀrseid krĂŒpteerimismeetodeid. Protokolli lĂ”i 2013. aastal Google alternatiivina TCP+TLS-i kombinatsioonile veebis, lahendades probleeme pika ĂŒhenduse seadistamise ja lĂ€birÀÀkimisaegadega TCP-s ning kĂ”rvaldades viivitused, kui andmeedastuse ajal paketid kaotsi lĂ€hevad.
  • Lisatud on eraldi “http2” direktiiv HTTP/2 protokolli valikuliseks lubamiseks seoses serveritega (saab kasutada eraldi “serveri” plokkides). "Kuula" direktiivi parameeter "http2" on aegunud.
  • Tugevdatud on kaitset HTTP/2-klientide ebanormaalse tegevuse ja eelkĂ”ige „Rapid Reset”-klassi DoS-rĂŒnnakute vastu, mille puhul luuakse ĂŒhe HTTP/2-ĂŒhenduse sees suur hulk kohese lĂ€htestamise lĂ”ime. Vaikekonfiguratsioonis piiravad selliseid rĂŒndeid ĂŒhenduse kohta esitatavate pĂ€ringute arvu piirang "keepalive_requests" (pĂ€rast iga 1000 pĂ€ringut lĂ€htestatakse ĂŒhendus) ja piirangud "limit_req". Suure hulga lĂ”imede kaudu pĂ€ringute ĂŒleujutamisele varem vastamiseks on lisatud tĂ€iendav piirang, mis ei luba vaikimisi luua rohkem kui 256 (2 * max_concurrent_streams) uut lĂ”ime sĂŒndmuse töötlemise tsĂŒkli kohta. Uus limiit vĂ”imaldab alustada pĂ€ringute blokeerimist enne samaaegsete lĂ”imede arvu ĂŒldise piirangu saavutamist, nĂ€iteks kui lĂ”ime töödeldakse asĂŒnkroonselt vĂ”i loputatakse.
  • Voo moodulile on lisatud tugi. virtuaalserverid, mille konfiguratsioon on defineeritud plokis „server { 
 }” serveri_nime direktiivi abil. server { serveri_nimi ~^(www\.)?(.+)$; proxy_pass www.$2:12345; }
  • Lisatud uus moodul ngx_stream_pass_module, mis on loodud edastama aktsepteeritud ĂŒhendusi otse mis tahes kuulamispesale, 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; } }
  • Voomooduli kuulamisdirektiiv rakendab tuge parameetritele "deferred" (lubab edasilĂŒkatud vastuvĂ”tmise), "accept_filter" (sissetuleva ĂŒhenduse filter, mida rakendatakse enne aktsepteerimisfunktsiooni kutsumist) ja "setfib" (marsruutimistabeli seadistamine).
  • MĂ”ne arhitektuuri puhul on toetatud ploki suuruse (vahemĂ€lu rea) mÀÀramine, mida kasutatakse andmete edastamiseks protsessori vahemĂ€lu ja mĂ€lu vahel.
  • HTTP/2 ĂŒhenduste automaatsel tuvastamisel kasutatavate puhvrite tĂ€iustatud haldamine.
  • TĂ€iustatud on suure hulga „asukoha” direktiividega konfiguratsioonide kĂ€ivitamise jĂ”udlust.
  • Serveri tĂ”uketehnoloogia tugi HTTP/2-s on eemaldatud.
  • Varem aegunud ssl-direktiiv on lĂ”petatud.

Kaks nĂ€dalat tagasi avaldati projekti FreeNginx 1.26.0 stabiilne vĂ€ljalase, mis arendab Nginxi kahvlit. Kahvlit arendab Maxim Dunin, ĂŒks peamisi Nginxi arendajaid. FreeNginx on positsioneeritud mittetulundusliku projektina, mis pakub Nginxi koodibaasi arendamist ilma ettevĂ”tte sekkumiseta.

Allikas: opennet.ru

Ostke DDoS-kaitsega saitide jaoks usaldusvÀÀrne hostimine, VPS VDS-serverid đŸ”„ Osta usaldusvÀÀrne veebimajutus DDoS-kaitsega, VPS VDS serverid | ProHoster