È stata rilasciata la versione principale di nginx 1.21.2, nell'ambito della quale continua lo sviluppo di nuove funzionalità (nella branch stabile 1.20, attivamente mantenuta, vengono apportate solo modifiche correlate alla risoluzione di errori gravi e vulnerabilità).
Variazioni principali:
- È stato garantito il blocco delle richieste HTTP/1.0 che includono l'intestazione HTTP «Transfer-Encoding» (introdotta nella versione del protocollo HTTP/1.1).
- È stata interrotta la supporto per il set di cifrature esportabili.
- È stata garantita la compatibilità con la libreria OpenSSL 3.0.
- Implementata la trasmissione delle intestazioni «Auth-SSL-Protocol» e «Auth-SSL-Cipher» al server di autenticazione del proxy email.
- Nell'API di filtraggio del corpo della richiesta è stata consentita la buffering dei dati elaborati.
- Durante il caricamento dei certificati del server, è stato attivato l'uso dei livelli di sicurezza supportati a partire da OpenSSL 1.1.0, configurabili tramite il parametro «@SECLEVEL=N» nella direttiva ssl_ciphers.
- Risolti i blocchi che si manifestavano durante la creazione SSL-delle connessioni ai backend nei moduli stream e gRPC.
- Risolta la problematica relativa alla registrazione su disco del corpo della richiesta quando viene utilizzato HTTP/2, in assenza dell'intestazione «Content-Length» nella richiesta.
È stata rilasciata anche njs 0.6.2, l'interprete del linguaggio JavaScript per web nginx. L'interprete njs implementa gli standard ECMAScript e consente di estendere le capacità di nginx nella gestione delle richieste mediante script nella configurazione. Gli script possono essere utilizzati nel file di configurazione per definire una logica di elaborazione delle richieste avanzata, formare configurazioni, generare dinamicamente risposte, modificare richieste/risposte o creare rapidamente stub per risolvere problemi nelle applicazioni web. Nella nuova versione sono stati aggiunti ai metodi Promise.all(), Promise.allSettled(), Promise.any() e Promise.race() nell'implementazione di Promise. È stato implementato il supporto per l'oggetto AggregateError.
Fonte: opennet.ru
