Wydanie nginx 1.19.2 i njs 0.4.3

uformowany wydanie wstępne nginx 1.19.2, w ramach którego kontynuowany jest rozwój nowych możliwości (równolegle wspierane stabilnie oddział 1.18 Dokonywane są jedynie zmiany związane z eliminacją poważnych błędów i podatności).

Głównym zmiany:

  • Połączenia Keepalive zaczynają się teraz zamykać przed wyczerpaniem wszystkich dostępnych połączeń, a odpowiednie ostrzeżenia są odzwierciedlane w dzienniku.
  • W przypadku transmisji fragmentarycznej zaimplementowano optymalizację odczytu treści żądania klienta.
  • Naprawiono wyciek pamięci występujący podczas korzystania z dyrektywy „ssl_ocsp”.
  • Naprawiono problem, który pojawił się w ostatniej wersji i polegał na wyświetlaniu w dzienniku komunikatów o zerowym rozmiarze bufora na wyjściu, gdy serwer FastCGI zwrócił niepoprawną odpowiedź.
  • Naprawiono awarię przepływu pracy występującą, gdy bufory Large_client_header_buffers są ustawione na różne rozmiary na różnych serwerach wirtualnych.
  • Rozwiązano problem nieprawidłowego kończenia połączeń SSL i wyświetlania ostrzeżeń „SSL_shutdown() nie powiódł się (SSL: ... zła próba ponownego zapisu)”.
  • Naprawiono błędy w modułach ngx_http_slice_module i ngx_http_xslt_filter_module.

Jednocześnie odbyła się problem njs 0.4.3, interpreter JavaScript dla serwera WWW Nginx. Interpreter njs implementuje standardy ECMAScript i pozwala rozszerzyć możliwości nginx w zakresie przetwarzania żądań za pomocą skryptów w konfiguracji. Skrypty mogą być użyte w pliku konfiguracyjnym do zdefiniowania zaawansowanej logiki przetwarzania żądań, generowania konfiguracji, dynamicznego generowania odpowiedzi, modyfikowania żądania/odpowiedzi lub szybkiego tworzenia kodów pośredniczących w celu rozwiązywania problemów w aplikacjach internetowych. W nowej wersji:

  • Dodano moduł Query String z funkcjami analizującymi ciąg znaków z parametrami żądania HTTP.
  • Funkcje fs.mkdir() i fs.rmdir() obsługują teraz rekurencyjne tworzenie i usuwanie katalogów.
  • Dodano dekoder UTF-8.
  • Zaimplementowano obsługę TextEncoder i TextDecoder w celu konwersji pomiędzy kodami znaków i ich reprezentacją w Unicode. (na przykład: „(new TextDecoder()).decode(new Uint8Array([206,177,206,178]))”.

Źródło: opennet.ru

Dodaj komentarz