Rilascio di nginx 1.21.2 e njs 0.6.2

È stato rilasciato il ramo principale di nginx 1.21.2, all'interno del quale continua lo sviluppo di nuove funzionalità (nel ramo stabile supportato in parallelo 1.20 vengono apportate solo modifiche relative all'eliminazione di errori gravi e vulnerabilità).

Principali modifiche:

  • Le richieste HTTP/1.0 che includono l'intestazione HTTP “Transfer-Encoding” vengono bloccate (appariva nella versione del protocollo HTTP/1.1).
  • Il supporto per la suite di crittografia di esportazione è stato interrotto.
  • La compatibilità con la libreria OpenSSL 3.0 è assicurata.
  • Implementato il trasferimento degli header “Auth-SSL-Protocol” e “Auth-SSL-Cipher” al server di autenticazione del proxy di posta.
  • L'API di filtraggio del corpo della richiesta consente il buffering dei dati elaborati.
  • Durante il caricamento dei certificati del server è stato adeguato l'utilizzo dei livelli di sicurezza supportati a partire da OpenSSL 1.1.0 e specificati tramite il parametro “@SECLEVEL=N” nella direttiva ssl_ciphers.
  • Risolti i blocchi che si verificavano durante la creazione di una connessione SSL ai backend nei moduli stream e gRPC.
  • È stato risolto il problema relativo alla scrittura del corpo della richiesta su disco quando si utilizza HTTP/2, in assenza dell'intestazione "Content-Length" nella richiesta.

Contemporaneamente è stato rilasciato njs 0.6.2, un interprete JavaScript per il web server nginx. L'interprete njs implementa gli standard ECMAScript e consente di espandere la capacità di nginx di elaborare le richieste utilizzando gli script nella configurazione. Gli script possono essere utilizzati in un file di configurazione per definire la logica avanzata per l'elaborazione delle richieste, la generazione di una configurazione, la generazione dinamica di una risposta, la modifica di una richiesta/risposta o la creazione rapida di stub per risolvere problemi nelle applicazioni web. Nella nuova versione, i metodi Promise.all(), Promise.allSettled(), Promise.any() e Promise.race() sono stati aggiunti all'implementazione Promise. Supporto implementato per l'oggetto AggregateError.

Fonte: opennet.ru

Aggiungi un commento