Випуск nginx 1.21.2 та njs 0.6.2

Сформовано випуск основної гілки nginx 1.21.2, в рамках якої продовжується розвиток нових можливостей (у паралельно підтримуваній стабільній гілці 1.20 вносяться лише зміни, пов'язані з усуненням серйозних помилок та вразливостей).

Основні зміни:

  • Забезпечено блокування запитів HTTP/1.0, що включають заголовок HTTP «Transfer-Encoding» (з'явився у версії протоколу HTTP/1.1).
  • Припинено підтримку експортного набору шифрів.
  • Забезпечено сумісність із бібліотекою OpenSSL 3.0.
  • Реалізовано передачу заголовків "Auth-SSL-Protocol" та "Auth-SSL-Cipher" серверу автентифікації поштового проксі.
  • В API фільтрації тіла запиту дозволена буферизація даних, що обробляються.
  • При завантаженні сертифікатів сервера налагоджено використання рівнів безпеки, що підтримуються починаючи з OpenSSL 1.1.0 і задаються через параметр @SECLEVEL=N у директиві ssl_ciphers.
  • Усунені зависання, що виявляються при створенні SSL-з'єднання до бекендів у модулях stream та gRPC.
  • Вирішено проблему із записом на диск тіла запиту під час використання HTTP/2, у разі відсутності у запиті заголовка «Content-Length».

Одночасно відбувся випуск njs 0.6.2, інтерпретатора мови JavaScript для веб-сервера nginx. Інтерпретатор njs реалізує стандарти ECMAScript і дозволяє розширювати можливості nginx обробки запитів за допомогою скриптів у конфігурації. Скрипти можуть використовуватися у файлі конфігурації для визначення розширеної логіки обробки запитів, формування конфігурації, динамічної генерації відповіді, модифікації запиту/відповіді або швидкого створення заглушок із вирішенням проблем у веб-додатках. У новій версії в реалізацію Promise додані методи Promise.all(), Promise.allSettled(), Promise.any() та Promise.race(). Реалізовано підтримку об'єкта AggregateError.

Джерело: opennet.ru

Додати коментар або відгук