Versiunea nginx 1.18.0

După un an de dezvoltare este prezentat noua ramură stabilă a serverului HTTP de înaltă performanță și a serverului proxy multiprotocol nginx 1.18.0, care a absorbit modificările acumulate în cadrul ramurii principale 1.17.x. În viitor, toate modificările din ramura stabilă 1.18 vor fi legate de eliminarea erorilor grave și a vulnerabilităților. În curând se va forma ramura principală a nginx 1.19, în cadrul căreia dezvoltarea de noi funcții va continua. Pentru utilizatorii obișnuiți care nu au sarcina de a asigura compatibilitatea cu modulele terțe, recomandat utilizați ramura principală, pe baza căreia se formează lansări ale produsului comercial Nginx Plus la fiecare trei luni.

Potrivit Raportul din aprilie Netcraft nginx este folosit pe 19.56% din toate site-urile active (cu un an în urmă 20.73%, acum doi ani 21.02%), ceea ce corespunde locului doi în popularitate în această categorie (cota Apache corespunde cu 27.64%, Google - 10.03%, Microsoft IIS - 4.77%) . În același timp, luând în considerare toate site-urile, nginx își păstrează liderul și ocupă 36.91% din piață (acum un an 27.52%), în timp ce ponderea Apache corespunde cu 24.73%, Microsoft IIS - 12.85%, Google - 3.42%.

Printre cele mai vizitate milioane de site-uri din lume, ponderea lui nginx este de 25.54% (acum un an 26.22%, acum doi ani 23.76%). În prezent, aproximativ 459 de milioane de site-uri web rulează Nginx (397 milioane în urmă cu un an). De În conformitate cu W3Techs nginx este folosit pe 31.9% dintre site-uri din milionul cel mai vizitat, în aprilie anul trecut această cifră era de 41.8%, cu anul anterior - 38% (scăderea se explică prin trecerea la contabilizarea separată a serverului http Cloudflare). Cota Apache a scăzut pe parcursul anului de la 43.6% la 38.9%, iar cota Microsoft IIS de la 8.6% la 8.3%. În Rusia nginx utilizat pe 78.9% dintre cele mai vizitate site-uri (acum un an - 81%).

Cele mai notabile îmbunătățiri adăugate în timpul dezvoltării ramurii din amonte 1.17.x:

  • A fost adăugată directiva limit_req_dry_run, care activează modul de rulare de probă, în care nu se aplică restricții asupra intensității procesării cererilor (fără limită de rate), dar continuă să țină cont de numărul de solicitări care depășesc limitele din memoria partajată;
  • A fost adăugată directiva limit_conn_dry_run, care comută modulul ngx_http_limit_conn_module în modul test run, în care numărul de conexiuni nu este limitat, ci este luat în considerare;
  • A fost adăugată directiva „auth_delay", care vă permite să adăugați o întârziere la cererile neautorizate cu un cod de răspuns de 401 pentru a reduce intensitatea ghicirii parolei și pentru a vă proteja împotriva atac, manipularea măsurării timpului de execuție a operațiunilor (timing attack) la accesarea sistemelor la care accesul este limitat parola, rezultatul unei subinterogări sau J.W.T. (JSON Web Token);
  • S-a adăugat suport pentru variabile în directivele „limit_rate” și „limit_rate_after”, precum și în directivele „proxy_upload_rate” și „proxy_download_rate” ale modulului de flux;
  • În directivă grpc_pass a adăugat suport pentru utilizarea unei variabile într-un parametru care definește o adresă. Dacă adresa este specificată ca nume de domeniu, numele este căutat printre grupurile de servere descrise și, dacă nu este găsită, atunci este determinat folosind un resolver;
  • S-au adăugat noi variabile $proxy_protocol_server_addr и $proxy_protocol_server_port, care conțin adresa serverului și portul obținut din antetul protocolului PROXY;
  • În modul ngx_stream_limit_conn_module variabilă adăugată $limit_conn_status, care stochează rezultatul limitării numărului de conexiuni: PASSED, REJECTED sau REJECTED_DRY_RUN;
  • În modul ngx_http_limit_req_module variabilă adăugată $limit_req_status, care stochează rezultatul limitării ratei de sosire a cererilor: PASSED, DELAYED, REJECTED, DELAYED_DRY_RUN sau REJECTED_DRY_RUN;
  • În mod implicit, modulul este asamblat ngx_http_postpone_filter_module;
  • S-a adăugat suport pentru comutarea blocurilor numite „locație” folosind metoda $r->internal_redirect() oferită de interpretul Perl încorporat. Această metodă implică acum procesarea URI-urilor cu caractere escape;
  • Când utilizați directiva „upstream” în blocul de setări „upstream”.hașiș» pentru a organiza echilibrarea încărcăturii cu legarea client-server, dacă specificați o valoare de cheie goală, modul uniform de echilibrare (round-robin) este acum activat;
  • S-a adăugat suport pentru apelarea ioctl(FIONREAD) dacă este disponibil pentru a evita citirea de la o conexiune rapidă în timp.

Sursa: opennet.ru

Adauga un comentariu