È stato pubblicato il primo rilascio del nuovo ramo principale nginx 1.29.0, nell'ambito del quale continuerà lo sviluppo di nuove funzionalità. Nel ramo stabile supportato in parallelo 1.28.x vengono apportate solo modifiche relative alla risoluzione di errori gravi e vulnerabilità. L'anno prossimo, sulla base del ramo principale 1.29.x, sarà formata la nuova versione stabile 1.30. Il codice del progetto è scritto in C e distribuito con licenza BSD.
Nel nuovo rilascio:
- È stata aggiunta la direttiva «early_hints» e implementato il supporto per il codice HTTP 103 nelle risposte dai backend proxy e gRPC. Il codice 103 consente di informare il cliente sui contenuti di alcuni header HTTP subito dopo la richiesta, senza aspettare che server siano completate tutte le operazioni associate alla richiesta e che inizi la consegna dei contenuti. In questo modo è possibile fornire suggerimenti su elementi correlati alla pagina da consegnare che possono essere caricati in anticipo (ad esempio, possono essere forniti link ai file css e javascript utilizzati nella pagina). Ricevendo informazioni su tali risorse, il browser inizierà a scaricarle senza attendere il termine della consegna della pagina principale, riducendo così il tempo totale di elaborazione della richiesta.
- È stata fornita la possibilità di caricare chiavi crittografiche da token hardware, utilizzando come fornitore la libreria OpenSSL.
- Sulla piattaforma macOS è stato implementato il supporto per il parametro «so_keepalive» nella direttiva «listen».
- Il livello degli errori che si verificano durante l'accordo della connessione utilizzando il protocollo QUIC è stato modificato da «error» a «crit» per i problemi critici con SSL e a «info» per gli altri problemi con SSL.
- Durante la costruzione della versione per Windows è stato utilizzato Windows SDK 10.
- Sono stati risolti problemi di build dei moduli ngx_http_v2_module e ngx_http_v3_module, utilizzando GCC 15, e problemi nella build del modulo ngx_http_v3_module con ottimizzazioni «-O3 -flto» in GCC 14.
- È stato migliorato il supporto per HTTP/3.
Fonte: opennet.ru
