Llançament de nginx 1.19.3 i njs 0.4.4

Format llançament de branca mestra nginx 1.19.3, dins del qual continua el desenvolupament de noves característiques (en un paral·lel suport estable branca 1.18 Només es fan canvis relacionats amb l'eliminació d'errors greus i vulnerabilitats).

El principal canvis:

  • El mòdul està inclòs ngx_stream_set_module, que permet assignar un valor a una variable

    servidor {
    escolta 12345;
    estableix $true 1;
    }

  • Directiva afegida proxy_cookie_flags per especificar marques per a les galetes en connexions proxy. Per exemple, per afegir la marca "httponly" a la cookie "one" i les marques "nosecure" i "samesite=strict" per a totes les altres cookies, podeu utilitzar la següent construcció:

    proxy_cookie_flags només un http;
    proxy_cookie_flags ~ nosecure samesite=estricte;

  • Directiva semblant userid_flags per afegir indicadors a Cookie també s'implementa per al mòdul ngx_http_userid.

Simultàniament tingué lloc qüestió njs 0.4.4, un intèrpret de JavaScript per al servidor web nginx. L'intèrpret njs implementa els estàndards ECMAScript i us permet ampliar la capacitat de nginx per processar sol·licituds mitjançant scripts a la configuració. Els scripts es poden utilitzar en un fitxer de configuració per definir la lògica avançada per processar les sol·licituds, generar una configuració, generar dinàmicament una resposta, modificar una sol·licitud/resposta o crear ràpidament stubs per resoldre problemes en aplicacions web. A la nova versió:

  • S'ha afegit suport per a la separació visual de dígits en números (per exemple, "1_000").
  • Mètodes que falten implementats per a %TypedArray%.prototype: every(), filter(), find(), findIndex(), forEach(), includes(), indexOf(), lastIndexOf(), map(), reduce(), reduirDreta(), inversa(), alguns().
  • S'han implementat mètodes que falten per a %TypedArray%: from(), of().
  • Objecte DataView implementat.

    : >> (nou DataView(buf.buffer)).getUint16()
    : 32974

  • Objecte Buffer implementat.

    : >> var buf = Buffer.from([0x80,206,177,206,178])
    : indefinit
    : >> buf.slice(1).toString()
    : 'αβ'
    : >> buf.toString('base64')
    : 'gM6xzrI='

  • S'ha afegit suport d'objectes Buffer als mètodes "crypto" i "fs", i s'ha garantit que fs.readFile(), Hash.prototype.digest() i Hmac.prototype.digest() retornin una instància de l'objecte Buffer.
  • S'ha afegit el suport ArrayBuffer al mètode TextDecoder.prototype.decode().

Font: opennet.ru

Afegeix comentari