Po letu razvoja nova stabilna veja visokozmogljivega HTTP strežnika in večprotokolnega proxy strežnika , ki je zajela spremembe, nakopičene v okviru glavne veje 1.17.x. V nadaljevanju bodo vse spremembe v stabilni veji 1.18 povezane z odpravo resnih napak in ranljivosti. Kmalu bo oblikovana glavna veja nginx 1.19, v okviru katere se bo nadaljevalo razvoj novih možnosti. Za običajne uporabnike, ki nimajo naloge zagotoviti združljivost s tretjimi mesti, uporabite glavno vejo, na osnovi katere se enkrat na tri mesece oblikujejo izdaje komercialnega produkta Nginx Plus.
U skladu s podjetja Netcraft se nginx uporablja na 19.56% vseh aktivnih spletnih mest (pred letom 20.73%, pred dvema letoma 21.02%), kar predstavlja drugo mesto po priljubljenosti v tej kategoriji (delež Apacha je 27.64%, Google — 10.03%, Microsoft IIS — 4.77%). Pri tem pa ob obravnavi vseh spletnih mest nginx ohranja vodstvo in zaseda 36.91% trga (pred letom 27.52%), medtem ko delež Apacha znaša 24.73%, Microsoft IIS — 12.85%, Google — 3.42%.
Med milijonom najbolj obiskanih spletnih mest na svetu delež nginx znaša 25.54% (pred letom 26.22%, pred dvema letoma 23.76%). V trenutku deluje pod nginx-em približno 459 milijonov spletnih mest (pred letom 397 milijonov). Po W3Techs se nginx uporablja na 31.9% spletnih mest iz milijona najbolj obiskanih, aprila prejšnjega leta je ta številka znašala 41.8%, pred dvema letoma 38% (upad je pojasnjen s prehodom na ločeno vodenje http strežnika Cloudflare). Delež Apacha se je v enem letu zmanjšala s 43.6% na 38.9%, delež Microsoft IIS pa z 8.6% na 8.3%. V Rusiji je nginx na 78.9% najbolj obiskanih spletnih mest (pred letom — 81%).
Najbolj opazna izboljšanja, dodana med oblikovanjem glavne veje 1.17.x:
- Dodana direktiva , ki aktivira način probne vožnje u kojem se ne primenjuju ograničenja na intenzitet obrade zahteva (bez rate limit), ali se i dalje beleži broj zahteva koji prelaze granice u deljenoj memoriji;
- Dodana direktiva , ki prenaša modul ngx_http_limit_conn_module v stanje preizkusa, pri čemer število povezav ni omejeno, temveč se upošteva;
- Dodana direktiva „«, ki omogoča dodajanje zamika nepooblaščenim zahtevam z odgovorom 401, da se zmanjša intenzivnost poskusov ugibanja gesel in zaščiti pred , manipulacijami pri merjenju časa izvajanja operacij (timing attack) pri dostopu do sistemov, katerih dostop je omejen , ili (JSON Web Token);
- Dodana podpora za spremenljivke v direktivah „limit_rate“ in „limit_rate_after“, pa tudi v direktivah „proxy_upload_rate“ in „proxy_download_rate“ modula stream;
- V direktivi dodana podpora za uporabo spremenljivke v parametru, ki določa naslov. Če je naslov naveden v obliki domenskega imena, se to ime poišče med opisanimi skupinami strežnikov, in, če ni najdeno, se določi s pomočjo resolverja;
- Dodane nove spremenljivke in , ki vsebujejo naslov in vrata strežnika, pridobljena iz PROXY protokolnih glav;
- V modulu dodana spremenljivka , ki shranjuje rezultat omejevanja števila povezav: PASSED, REJECTED ali REJECTED_DRY_RUN;
- V modulu dodana spremenljivka , ki shranjuje rezultat omejevanja hitrosti prihoda zahtevkov: PASSED, DELAYED, REJECTED, DELAYED_DRY_RUN ali REJECTED_DRY_RUN;
- Privzeto je zagotovljena sestava modula ;
- Dodana je podpora za preklapljanje imenovanih blokov 'location' s pomočjo metode $r->internal_redirect(), ki jo zagotavlja vgrajeni interpreter Perl. Ta metoda zdaj predpostavlja obdelavo URI z upoštevanjem pobeglih znakov;
- Kada se koristi u bloku podešavanja „upstream“ sa direktivom „“ za organizaciju ravnoteže opterećenja sa vezanjem klijenta za server, u slučaju da se navede prazna vrednost ključa, sada se aktivira način ravnomerne ravnoteže (round-robin);
- Dodana je podpora za klic ioctl(FIONREAD), če je na voljo, da se izogne branju iz hitre povezave dlje časa.
Izvor: opennet.ru
