Nuove versioni di nginx 1.25.5 e fork FreeNginx 1.26.0

È stato rilasciato il ramo principale di nginx 1.25.5, all'interno del quale continua lo sviluppo di nuove funzionalità. Il ramo stabile 1.24.x mantenuto in parallelo contiene solo modifiche relative all'eliminazione di bug e vulnerabilità gravi. In futuro, sulla base del ramo principale 1.25.x, verrà formato un ramo stabile 1.26. Il codice del progetto è scritto in C e distribuito sotto la licenza BSD.

Tra le modifiche:

  • Al modulo stream è stato aggiunto il supporto per i server virtuali, la cui configurazione è definita nel blocco “server { ... }” utilizzando la direttiva server_name. server { nome_server ~^(www\.)?(.+)$; proxy_passwww.$2:12345; }
  • È stato aggiunto un nuovo modulo ngx_stream_pass_module, progettato per inoltrare le connessioni ricevute direttamente a qualsiasi socket di ascolto associato a moduli come http, stream e mail. stream { server { ascolta 12345 ssl; certificato_ssl dominio.crt; ssl_certificate_key dominio.chiave; superare 127.0.0.1:8000; } }
  • La direttiva di ascolto del modulo stream implementa il supporto per i parametri “deferred” (abilita l'accettazione differita), “accept_filter” (filtro della connessione in entrata applicato prima di chiamare la funzione di accettazione) e “setfib” (impostazione della tabella di routing).
  • Per alcune architetture è stato implementato il supporto per determinare la dimensione del blocco (linea della cache) utilizzato per trasferire i dati tra la cache della CPU e la memoria.
  • Sui sistemi Apple Silicon è stato aggiunto il supporto per il gestore pacchetti Homebrew.
  • I problemi di compilazione incrociata per Windows sono stati risolti.
  • Risolto un bug che causava la chiusura delle connessioni quando si utilizzava la modalità 0-RTT nel protocollo QUIC.

Inoltre, possiamo notare la pubblicazione di una versione stabile del progetto FreeNginx 1.26.0, che sviluppa un fork di Nginx. Il fork è stato sviluppato da Maxim Dunin, uno dei principali sviluppatori di Nginx. FreeNginx è posizionato come un progetto senza scopo di lucro che fornisce lo sviluppo della base di codice Nginx senza interferenze aziendali. La versione 1.26.0 è contrassegnata come versione stabile, incorporando modifiche e correzioni dalle versioni del ramo principale di Nginx 1.25. Tra le altre cose, FreeNginx 1.26.0 include il supporto sperimentale per il protocollo HTTP/3, miglioramenti per contrastare gli attacchi DoS e correzioni relative all'elaborazione I/O asincrona.

Contemporaneamente è stato rilasciato njs 0.8.4, 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: è stato aggiunto alla CLI il supporto per il motore JavaScript QuickJS; aggiunta la possibilità di impostare l'intestazione del Server; Implementato un controllo per la duplicazione delle variabili impostate tramite js_set.

Fonte: opennet.ru

Aggiungi un commento