Etter ett Ärs utvikling ny stabil gren av hÞyytelses HTTP-server og multifunksjonsproxy-server , som har samlet endringer fra hovedgrenen 1.17.x. I fremtiden vil alle endringer i den stabile grenen 1.18 knyttes til fjerning av alvorlige feil og sÄrbarheter. Innen kort tid vil hovedgrenen nginx 1.19 bli opprettet, hvor utviklingen av nye funksjoner vil fortsette. For vanlige brukere som ikke har som mÄl Ä sikre kompatibilitet med tredjepartsmoduler, bruke hovedgrenen, som danner kommersielle utgivelser av Nginx Plus hvert tredje mÄned.
I samsvar med fra selskapet Netcraft brukes nginx pĂ„ 19.56% av alle aktive nettsteder (for ett Ă„r siden 20.73%, for to Ă„r siden 21.02%), noe som tilsvarer andreplass i popularitet innen denne kategorien (andelen Apache er 27.64%, Google â 10.03%, Microsoft IIS â 4.77%). Samtidig, nĂ„r man vurderer alle nettsteder, beholder nginx ledelsen og tar 36.91% av markedet (for ett Ă„r siden 27.52%), mens andelen Apache er 24.73%, Microsoft IIS â 12.85%, Google â 3.42%.
Blant en million av de mest besĂžkte nettstedene i verden er andelen nginx 25.54% (for ett Ă„r siden 26.22%, for to Ă„r siden 23.76%). Per nĂ„ finnes det omtrent 459 millioner nettsteder drevet av nginx (for ett Ă„r siden 397 millioner). I W3Techs brukes nginx pĂ„ 31.9% av nettstedene blant millionen mest besĂžkte, i april i fjor var dette tallet 41.8%, Ă„ret fĂžr 38% (nedgangen skyldes overgangen til separat regnskap for Cloudflare HTTP-server). Andelen Apache falt fra 43.6% til 38.9% i lĂžpet av Ă„ret, mens andelen Microsoft IIS fra 8.6% til 8.3%. I Russland brukes nginx pĂ„ 78.9% av de mest besĂžkte nettstedene (for ett Ă„r siden â 81%).
De mest merkbare forbedringene lagt til i prosessen med Ă„ etablere hovedgrenen 1.17.x:
- Direktivet , som aktiverer en prÞveprogrammodus der det ikke pÄlegges begrensninger pÄ forespÞrselshÄndtering (uten rate limit), men antallet forespÞrselene som overskrider grensen, fortsatt registreres i delt minne;
- Direktivet , som setter ngx_http_limit_conn_module-modulen i en prĂžvekjĂžringsmodus der antall tilkoblinger ikke er begrenset, men blir tatt med i beregningen;
- Den nye direktiven ««, som gjÞr det mulig Ä legge til en forsinkelse for uautorisert forespÞrsel med svarkode 401 for Ä redusere intensiteten av passordkraking og beskytte mot , manipulasjon av tidsmÄling av operasjoner (timing attack) nÄr man fÄr tilgang til systemer som er begrenset , eller (JSON Web Token);
- StÞtte for variabler er lagt til i direktivene «limit_rate» og «limit_rate_after», samt i direktivene «proxy_upload_rate» og «proxy_download_rate» i stream-modulen;
- I direktivet er det lagt til stĂžtte for bruk av variabel i parameteren som definerer adressen. Hvis adressen er angitt som et domenenavn, sĂžkes det blant de beskrevne servergruppene, og hvis den ikke finnes, bestemmes den ved hjelp av resolveren;
- Nye variabler er lagt til og , som inneholder adressen og porten til serveren hentet fra PROXY-protokollens overskrift;
- I modulen en ny variabel er lagt til , som lagrer resultatet av begrensningen av antall tilkoblinger: PASSED, REJECTED eller REJECTED_DRY_RUN;
- I modulen en ny variabel er lagt til , som lagrer resultatet av begrensningen av forespĂžrselshastigheten: PASSED, DELAYED, REJECTED, DELAYED_DRY_RUN eller REJECTED_DRY_RUN;
- Modulen er standardmessig bygget ;
- StÞtte for omdirigering av navngitte blokker «location» ved hjelp av metoden $r->internal_redirect(), levert av den innebygde Perl-tolkeren, er lagt til. Denne metoden innebÊrer nÄ behandling av URI-er med unescaped tegn;
- NÄr den brukes i innstillingsblokken «upstream» med direktivet «» for Ä organisere lastbalansering med klientbinding til serveren, aktiveres nÄ en modus for jevn lastbalansering (round-robin) dersom en tom nÞkkelverdi er angitt;
- StÞtte for ioctl(FIONREAD) er lagt til, hvis det er tilgjengelig, for Ä unngÄ langvarig lesing fra en rask tilkobling.
Kilde: opennet.ru
