Efter et års udvikling en ny stabil række af den højtydende HTTP-server og multiprotokol proxyserver , som integrerede ændringer, der er akkumuleret i hovedversionen 1.17.x. Fremover vil alle ændringer i den stabile version 1.18 være relateret til eliminering af alvorlige fejl og sårbarheder. Snart vil hovedversionen nginx 1.19 blive dannet, hvor udviklingen af nye funktioner fortsat vil finde sted. For almindelige brugere, der ikke har behov for at sikre kompatibilitet med tredjepartsmoduler, at bruge hovedgrenen, som er grundlaget for, at der hver tredje måned dannes udgivelser af det kommercielle produkt Nginx Plus.
I henhold til ifølge Netcraft anvendes nginx på 19,56 % af alle aktive websteder (for et år siden 20,73 %, for to år siden 21,02 %), hvilket svarer til andenpladsen i popularitet inden for denne kategori (andelen for Apache er 27,64 %, Google — 10,03 %, Microsoft IIS — 4,77 %). Samtidig bevarer nginx førerpositionen, når alle websteder overvejes, og besidder 36,91 % af markedet (for et år siden 27,52 %), mens andelen for Apache er 24,73 %, Microsoft IIS — 12,85 %, Google — 3,42 %.
Blandt de en million mest besøgte websteder i verden er andelen for nginx 25,54 % (for et år siden 26,22 %, for to år siden 23,76 %). I øjeblikket administreres omkring 459 millioner websteder af nginx (for et år siden 397 millioner). Efter W3Techs anvendes nginx på 31,9 % af de mest besøgte websteder ud af en million, i april sidste år var denne indikator 41,8 %, og året før 38 % (nedgangen skyldes overgangen til separat registrering af Cloudflare HTTP-serveren). Andelen for Apache faldt i løbet af året fra 43,6 % til 38,9 %, og andelen for Microsoft IIS faldt fra 8,6 % til 8,3 %. I Rusland anvendes nginx på 78,9 % af de mest besøgte websteder (for et år siden — 81 %).
De mest markante forbedringer tilføjet under dannelsen af hovedversionen 1.17.x:
- Tilføjet direktiv , der aktiverer en forsøgsmodus, hvor der ikke anvendes begrænsninger på intensiteten af anmodningsbehandling (uden rate limit), men der fortsætter med at blive registreret anmodninger, der overskrider grænserne i delt hukommelse;
- Tilføjet direktiv , der bringer modulet ngx_http_limit_conn_module i testmode, hvor antallet af forbindelser ikke begrænses, men tælles;
- Der er tilføjet direktivet ««, der gør det muligt at tilføje en forsinkelse for uautoriserede forespørgsler med svarkode 401 for at reducere intensiteten af password cracking og beskytte mod , manipulation af målingen af operationernes udførelsestid (timing attack) ved adgang til systemer, hvor adgangen er begrænset , eller (JSON Web Token);
- Tilføjet understøttelse af variabler i direktiverne «limit_rate» og «limit_rate_after», samt i direktiverne «proxy_upload_rate» og «proxy_download_rate» i streammodulet;
- I direktivet tilføjet understøttelse af brugen af variabel i parametret, der bestemmer adressen. Hvis adressen angives som et domænenavn, vil navnet blive søgt blandt de beskrevne servergrupper, og hvis det ikke findes, bestemmes det ved hjælp af resolveren;
- Nye variabler tilføjet og , som indeholder adressen og porten til serveren, modtaget fra PROXY-protokoloverskriften;
- I modulet tilføjet variabel , som gemmer resultatet af begrænsningen af antallet af forbindelser: PASSED, REJECTED eller REJECTED_DRY_RUN;
- I modulet tilføjet variabel , som gemmer resultatet af hastighedsbegrænsningen for indkommende forespørgsler: PASSED, DELAYED, REJECTED, DELAYED_DRY_RUN eller REJECTED_DRY_RUN;
- Som standard er opbygningen af modulet sikret. ;
- Tilføjet støtte til at skifte navngivne blokke "location" ved hjælp af metoden $r->internal_redirect(), som tilbydes af den indbyggede Perl-fortolker. Denne metode omfatter nu behandling af URI'er med undslippede tegn;
- Når du bruger direktivet «» i indstillingsblokken «upstream» til at organisere belastningsbalancering med klientbinding til server, aktiveres i tilfælde af en tom værdi for nøglen nu tilstand for jævn belastningsbalancering (round-robin);
- Tilføjet support til opkald af ioctl(FIONREAD), hvis det er tilgængeligt, for at undgå at læse fra en hurtig forbindelse i lang tid.
Kilde: opennet.ru
