È stato rilasciato nginx 1.17.1 e njs 0.3.3

Disponibile rilascio della versione principale nginx 1.17.1, nell'ambito del quale continuano a svilupparsi nuove funzionalità (mentre viene mantenuta la stabilità) versione 1.16 vengono apportate solo modifiche relative alla risoluzione di gravi errori e vulnerabilità.

Principali modifiche:

  • È stata aggiunta la direttiva limit_req_dry_run, che attiva la modalità di prova in cui non vengono applicati i limiti sulla frequenza delle richieste (senza rate limit), ma continua a registrare il numero di richieste che superano i limiti nella memoria condivisa;
  • Utilizzando nel blocco di configurazione «upstream» la direttiva «hash» per realizzare il bilanciamento del carico legato al client, se viene specificato un valore vuoto per la chiave, ora viene attivata la modalità di bilanciamento uniforme (round-robin);
  • È stato risolto un crash del processo di lavoro quando si utilizza la cache in combinazione con la direttiva «image_filter» e il reindirizzamento del gestore di errore 415 utilizzando la direttiva «error_page»;
  • È stato risolto un crash del processo di lavoro che si manifestava durante l'uso dell'interprete Perl integrato.

Inoltre, si può notare rilascio njs 0.3.3, interprete del linguaggio JavaScript per il server web nginx. L'interprete njs implementa gli standard ECMAScript e consente di estendere le capacità di nginx nella gestione delle richieste tramite script nella configurazione. Gli script possono essere utilizzati nel file di configurazione per definire una logica avanzata di gestione delle richieste, generazione della configurazione, generazione dinamica della risposta, modifica della richiesta/risposta o per creare rapidamente stub per risolvere problemi nelle web applicazioni.

Nella nuova versione di njs sono stati risolti i problemi identificati durante il fuzzing test. È stata implementata una variabile globale 'process' con i parametri e le variabili ambientali del processo corrente (process.pid, process.env.HOME, ecc.). È stata garantita la possibilità di scrivere in tutte le proprietà e metodi incorporati. È stata aggiunta l'implementazione di Array.prototype.fill(). È stata implementata la sintassi proposta in ECMAScript 5. getter e setter per associare una proprietà di un oggetto a una funzione, ad esempio:

var o = {a:2};
Object.defineProperty(o, 'b', {get:function(){return 2*this.a}});

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