Lëshimi i nginx 1.28.0 dhe forka FreeNginx 1.28.0

Pas një vit zhvillimi, është publikuar degë e re stabile e serverit HTTP me performancë të lartë dhe serverit proxy shumëprotokollor nginx 1.28.0, e cila ka përmbledhur ndryshimet e grumbulluara në degën kryesore 1.27.x. Më tej, të gjitha ndryshimet në degën e stabilizuar 1.28 do të lidhen me eliminimin e defekteve të rënda dhe vulnerabiliteteve. Së shpejti do të formohet dega kryesore nginx 1.29, në të cilën do të vazhdojë zhvillimi i mundësive të reja. Për përdoruesit e zakonshëm, të cilët nuk kanë nevojë për të siguruar kompatibilitet me module të jashtme, rekomandohet përdorimi i degës kryesore, mbi bazën e së cilës krijohen lëshime të produktit komercial Nginx Plus çdo tre muaj.

Sipas raportit tĂ« marsit nga kompania Netcraft, rreth 245 milion faqe interneti janĂ« nĂ«n menaxhimin e nginx (njĂ« vit mĂ« parĂ« 243 milion, dy vjet mĂ« parĂ« 289 milion). Nginx pĂ«rdoret nĂ« 17.89% tĂ« tĂ« gjitha faqeve aktive (njĂ« vit mĂ« parĂ« 18.15%, dy vjet mĂ« parĂ« 18.94%), qĂ« i pĂ«rputhet vendit tĂ« parĂ« pĂ«r popullaritet nĂ« kĂ«tĂ« kategori (pjesa e Apache Ă«shtĂ« 16.03% (njĂ« vit mĂ« parĂ« 20.09%, dy vjet mĂ« parĂ« 20.52%), Cloudflare — 17.81% (14.12%, 11.32%), Google — 9.89% (10.41%, 9.89%).

Duke shqyrtuar tĂ« gjitha faqet, nginx mbetet nĂ« krye dhe zĂ« 20.48% tĂ« tregut (njĂ« vit mĂ« parĂ« 22.31%, dy vjet mĂ« parĂ« — 25.94%), ndĂ«rsa pjesa e Apache Ă«shtĂ« 16.03% (20.17%, 20.58%), Cloudflare — 12.87% (11.24%, 10.17%), OpenResty (platformĂ« bazuar nĂ« nginx dhe LuaJIT) — 9.36% (7.93%, 7.94%).

Mes njĂ« milion faqeve mĂ« tĂ« vizituara nĂ« botĂ«, nginx zĂ« vendin e dytĂ« me njĂ« pjesĂ« prej 20.37% (njĂ« vit mĂ« parĂ« 20.63%, dy vjet mĂ« parĂ« 21.37%). Vendi i parĂ« mbahet nga Cloudflare — 22.32% (njĂ« vit mĂ« parĂ« 22.59%, dy vjet mĂ« parĂ« 21.62%). Pjesa e Apache httpd — 17.95% (20.09%, 21.18%).

Sipas të dhënave të W3Techs, nginx përdoret në 33.8% të faqeve nga një milion më të vizituara (në prill të vitit të kaluar ky tregues ishte 34.3%, në vitin e kaluar 34.5%). Pjesa e Apache ka rënë nga 30.1% në 26.3% gjatë një viti, ndërsa pjesa e Microsoft IIS ka rënë nga 5% në 4%. Pjesa e Node.js është rritur nga 3.2% në 4.4%, ndërsa pjesa e LiteSpeed është rritur nga 12.9% në 14.6%.

Përmirësimet më të dukshme, të shtuar gjatë formimit të degës kryesore 1.27.x:

  • PĂ«r lidhjet qĂ« pĂ«rdorin protokollin QUIC, Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r algoritmin e menaxhimit tĂ« ngarkesĂ«s nĂ« rrjet CUBIC (RFC 9438), i cili funksionon duke rritur gradualisht madhĂ«sinĂ« e dritares sĂ« ngarkesĂ«s deri nĂ« shfaqjen e humbjes sĂ« pakove, pas sĂ« cilĂ«s madhĂ«sia e dritares rikthehet nĂ« vlerĂ«n e fillimit tĂ« humbjes. NĂ« testet e kryera, pĂ«rdorimi i CUBIC ka lejuar tĂ« reduktohet koha e transferimit tĂ« njĂ« skedari prej 500MB me 24% me vonesa 40ms dhe BDP 750K (Bandwidth Delay Product) dhe me 73% me vonesa 100ms dhe BDP 9M.
  • NĂ« modulimin e stream Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r verifikimin e revokimit tĂ« certifikatave tĂ« klientĂ«ve, duke pĂ«rdorur protokollin OCSP (Protokolli i Statusit tĂ« CertifikatĂ«s nĂ« Internet).
  • NĂ« modulimin e stream Ă«shtĂ« realizuar mbĂ«shtetje pĂ«r teknikĂ«n e verifikimit tĂ« tĂ«rheqjes sĂ« certifikatave OCSP Stapling, e cila konsiston nĂ« atĂ« qĂ«, gjatĂ« negociatĂ«s sĂ« lidhjes TLS, pĂ«rgjigjja OCSP e vlefĂ«suar nga autoriteti certifikues dĂ«rgohet nga serveri qĂ« ofron faqen, pa nevojĂ«n e njĂ« ndĂ«rveprimi tĂ« drejtpĂ«rdrejtĂ« me autoritetin certifikues.
  • NĂ« nisjen dhe pĂ«rditĂ«simin e konfiguracionit, Ă«shtĂ« implementuar mbajtja nĂ« kĂ«nd certifikatave SSL, çelĂ«save dhe CRL (Lista e Revokimit tĂ« CertifikatĂ«s).
  • JanĂ« shtuar mundĂ«si pĂ«r tĂ« reduktuar konsumimin e burimeve dhe pĂ«r tĂ« zvogĂ«luar ngarkesĂ«n nĂ« CPU kur pĂ«rdoret TLS nĂ« konfigurime me numĂ«r tĂ« madh blokesh server dhe location. Ndryshimet e shtuara lejojnĂ« pĂ«rdorimin e kontekstit SSL tĂ« prindit, nĂ« vend tĂ« krijimit tĂ« njĂ« konteksti tĂ« veçantĂ« SSL (SSL_CTX nĂ« OpenSSL) pĂ«r çdo bllok konfigurimi.
  • Direktiva «ssl_client_certificate» ofron mbĂ«shtetje pĂ«r certifikatat me informacione shtesĂ«.
  • PĂ«r tĂ« verifikuar certifikatat SSL tĂ« klientĂ«ve, direktiva «ssl_client_certificate» tani nuk Ă«shtĂ« e detyrueshme.
  • NĂ« modul ngx_mail_proxy_module Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r modin e IMAP LOGIN specifik pĂ«r SmarterMail me pĂ«rgjigje tĂ« paetiketuar CAPABILITY.
  • NĂ« modulimin ngx_http_proxy_module Ă«shtĂ« shtuar drejtimi «proxy_pass_trailers», i cili lejon kalimin e fushave tĂ« titujve nĂ« fund tĂ« pĂ«rgjigjes nga serveri i proxy te klienti.
  • NĂ« direktivĂ«n 'server', tĂ« pĂ«rdorur nĂ« bllokun 'upstream', Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r parametri 'resolve', i cili pĂ«rfshin ndjekjen e ndryshimeve adresat IP pĂ«r emrin e domainit tĂ« pĂ«rdorur dhe pĂ«rditĂ«simin automatik tĂ« konfigurimit tĂ« bllokut 'upstream' pa nevojĂ«n e rinisjes sĂ« nginx nĂ« rast tĂ« ndryshimit tĂ« adresĂ«s.
  • ËshtĂ« shtuar mundĂ«sia pĂ«r tĂ« pĂ«rdorur variabla nĂ« direktivat 'proxy_limit_rate', 'fastcgi_limit_rate', 'scgi_limit_rate' dhe 'uwsgi_limit_rate'.
  • NĂ« direktivat 'proxy_bind', 'fastcgi_bind', 'grpc_bind', 'memcached_bind', 'scgi_bind' dhe 'uwsgi_bind', si dhe nĂ« si adresĂ« klienti nĂ« modulimin ngx_http_realip_module, lejohet tregimi i adreseve IPv6 nĂ« kllapa pa numĂ«r porti.
  • Shtuar direktiva «keepalive_min_timeout», e cila pĂ«rcakton timeout-in, gjatĂ« sĂ« cilĂ«s nginx nuk do tĂ« mbyllĂ« lidhjen keep-alive me klientin.
  • PĂ«r arsye tĂ« parazgjedhura, protokollet TLSv1 dhe TLSv1.1 janĂ« tĂ« çaktivizuar.
  • JanĂ« zgjidhur problemet me ngarkimin e gjatĂ« tĂ« skedarĂ«ve tĂ« konfigurimit pĂ«r shkak tĂ« rimeçtimit tĂ« tĂ« njĂ«jtit set TLS-certifikatash, çelĂ«sa dhe lista tĂ« autoriteteve certifikuese. ËshtĂ« pĂ«rshpejtuar rinisja e konfigurimit pĂ«r shkak tĂ« riciklimit tĂ« objekteve TLS qĂ« nuk kanĂ« ndryshuar, siç janĂ« certifikat, çelĂ«sa dhe CRL. PĂ«r tĂ« çaktivizuar trashĂ«giminĂ« e objekteve gjatĂ« pĂ«rditĂ«simit tĂ« konfigurimit, Ă«shtĂ« shtuar direktiva 'ssl_object_cache_inheritable'.
  • ShtesĂ« pĂ«r caching pĂ«r certifikatat dhe çelĂ«sat e ngarkuar duke pĂ«rdorur variable nĂ« direktivat (p.sh., «ssl_certificate /etc/ssl/$ssl_server_name.crt»). PĂ«r menaxhimin e cache-it janĂ« shtuar direktivat «ssl_certificate_cache», «proxy_ssl_certificate_cache», «grpc_ssl_certificate_cache» dhe «uwsgi_ssl_certificate_cache». NĂ«pĂ«rmjet kĂ«tyre direktivave mund tĂ« konfigurohet madhĂ«sia maksimale e cache-it, koha e vlefshmĂ«risĂ« sĂ« tĂ« dhĂ«nave dhe koha pĂ«r pastrimin e tĂ« dhĂ«nave tĂ« pavlefshme. Shembuj: «ssl_certificate_cache max=1000 inactive=20s valid=1m;».
  • Konsumimi i memories Ă«shtĂ« reduktuar gjatĂ« pĂ«rpunimit tĂ« kĂ«rkesave afatgjata nĂ« konfigurimet qĂ« pĂ«rdorin direktivat 'gzip', 'gunzip', 'ssi', 'sub_filter' ose 'grpc_pass'.
  • MadhĂ«sia maksimale e sesioneve SSL tĂ« ruajtura nĂ« memorie tĂ« ndarĂ« Ă«shtĂ« rritur nĂ« 8192.
  • ËshtĂ« krijuar ndĂ«rlidhja me bibliotekĂ«n C Musl.
  • ËshtĂ« bĂ«rĂ« punĂ« pĂ«r optimizimin e performancĂ«s dhe pĂ«r eliminimin e gabimeve nĂ« implementimin e HTTP/3.

Gjithashtu mund të theksohet publikimi i versionit të projektit FreeNginx 1.28.0, që zhvillon fork-un Nginx. Zhvillimi i këtij fork-u po udhëhiqet nga Maksim Dunin, një nga zhvilluesit kryesorë të Nginx. FreeNginx pozicionohet si një projekt jo-komercial, që siguron zhvillimin e kodit të bazës Nginx pa ndërhyrje nga korporatat. Ndër ndryshimet specifike në degën FreeNginx 1.28:

  • Parametri «off» nĂ« direktivĂ«n «pid», qĂ« çaktivizon krijimin e skedarit PID.
  • Kufizimi i intensitetit tĂ« shkruarjeve nĂ« logun e gabimeve pĂ«r tĂ« mbrojtur nga mbushja e logut me mesazhe tipike.
  • Realizimi i parametrin multipath nĂ« direktivĂ«n listen pĂ«r mbĂ«shtetje tĂ« Multipath TCP.
  • MbĂ«shtetje pĂ«r titullin HTTP «Age» pĂ«r tĂ« pĂ«rcaktuar kohĂ«n e jetĂ«s sĂ« regjistrimeve nĂ« cache.
  • Shtimi i metodave tĂ« autentikimit XOAUTH2 dhe OAUTHBEARER nĂ« modulĂ«n mail_proxy.

Burimi: opennet.ru

Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« đŸ”„ Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« | ProHoster