Rilascio nginx 1.18.0

Dopo un anno di sviluppo è presentata nuovo ramo stabile di un server HTTP ad alte prestazioni e di un proxy multi-protocollo nginx 1.18.0, che incorpora le modifiche accumulate nella versione principale 1.17.x. In seguito, tutte le modifiche nel ramo stabile 1.18 saranno focalizzate sulla correzione di gravi errori e vulnerabilità. A breve sarà formata la versione principale nginx 1.19, nella quale continuerà lo sviluppo di nuove funzionalità. Per gli utenti comuni, che non hanno la necessità di garantire la compatibilità con moduli di terze parti, si raccomanda è consigliato utilizzare il ramo principale, su cui ogni tre mesi vengono pubblicate nuove versioni del prodotto commerciale Nginx Plus.

In conformità con il rapporto di aprile della società Netcraft, nginx è utilizzato nel 19,56% di tutti i siti web attivi (un anno fa 20,73%, due anni fa 21,02%), il che corrisponde al secondo posto per popolarità in questa categoria (la quota di Apache è del 27,64%, Google del 10,03%, Microsoft IIS del 4,77%). Inoltre, considerando tutti i siti web, nginx mantiene la leadership con il 36,91% del mercato (un anno fa 27,52%), mentre la quota di Apache è del 24,73%, Microsoft IIS del 12,85%, Google del 3,42%.

Tra i milioni di siti web più visitati al mondo, la quota di nginx è del 25,54% (un anno fa 26,22%, due anni fa 23,76%). Attualmente, circa 459 milioni di siti sono sotto nginx (un anno fa 397 milioni). Secondo dati W3Techs, nginx è utilizzato nel 31,9% dei siti dei milioni più visitati, ad aprile dello scorso anno questo valore era del 41,8%, due anni fa del 38% (il calo è spiegato dal passaggio a una registrazione separata del server http Cloudflare). La quota di Apache è diminuita nell'anno dal 43,6% al 38,9%, mentre la quota di Microsoft IIS è scesa dall'8,6% all'8,3%. In Russia, nginx viene utilizzato è utilizzato nel 78,9% dei siti più visitati (un anno fa - 81%).

I miglioramenti più significativi aggiunti nella formazione del ramo principale 1.17.x:

  • Direttiva aggiunta limit_req_dry_run, che attiva la modalità di prova, in cui non si applicano limiti di intensità per l'elaborazione delle richieste (senza rate limit), ma viene comunque registrato il numero di richieste che superano i limiti in memoria condivisa;
  • Direttiva aggiunta limit_conn_dry_run, che mette il modulo ngx_http_limit_conn_module in modalità di prova, in cui il numero di connessioni non è limitato, ma viene registrato;
  • È stata aggiunta la direttiva «auth_delay«, che consente di aggiungere un ritardo alle richieste non autorizzate con codice di risposta 401 per ridurre l'intensità del tentativo di indovinare le password e proteggere da attacchi, che manipolano la misurazione del tempo di esecuzione delle operazioni (timing attack) quando si accede a sistemi limitati da password, il risultato della sottoquery o JWT (JSON Web Token);
  • Aggiunta la supporto per le variabili nelle direttive «limit_rate» e «limit_rate_after», così come nelle direttive «proxy_upload_rate» e «proxy_download_rate» del modulo stream;
  • Nella direttiva grpc_pass aggiunto il supporto per l'uso di una variabile nel parametro che definisce l'indirizzo. Se l'indirizzo è specificato come nome di dominio, il nome viene cercato tra i gruppi di server descritti e, se non trovato, viene determinato tramite il resolver;
  • Aggiunti nuovi variabili $proxy_protocol_server_addr e $proxy_protocol_server_port, che contengono l'indirizzo e la porta del server, ottenuti dall'intestazione del protocollo PROXY;
  • Nel modulo ngx_stream_limit_conn_module aggiunta la variabile $limit_conn_status, che memorizza il risultato della limitazione del numero di connessioni: PASSED, REJECTED o REJECTED_DRY_RUN;
  • Nel modulo ngx_http_limit_req_module aggiunta la variabile $limit_req_status, che memorizza il risultato della limitazione della velocità di arrivo delle richieste: PASSED, DELAYED, REJECTED, DELAYED_DRY_RUN o REJECTED_DRY_RUN;
  • Per impostazione predefinita è stata garantita la raccolta del modulo ngx_http_postpone_filter_module;
  • Aggiunto il supporto per il passaggio dei blocchi denominati "location" tramite il metodo $r->internal_redirect(), fornito dal interprete Perl integrato. Questo metodo ora prevede la gestione degli URI con caratteri di escape;
  • Quando viene utilizzata nella sezione di configurazione «upstream» la direttiva «hash» per organizzare il bilanciamento del carico con legame cliente-server, ora con un valore chiave vuoto si attiva la modalità di bilanciamento uniforme (round-robin);
  • Aggiunto il supporto per la chiamata ioctl(FIONREAD), se disponibile, per evitare letture da una connessione veloce per lungo tempo.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster