The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выпуск nginx 1.19.1 и njs 0.4.2

08.07.2020 09:11

Представлен выпуск новой основной ветки nginx 1.19.1, в рамках которой ведётся развитие новых возможностей. В параллельно поддерживаемой стабильной ветке 1.18.x вносятся только изменения, связанные с устранением серьёзных ошибок и уязвимостей. В следующем году на базе основной ветки 1.19.x будет сформирована стабильная ветка 1.20.

Основные изменения:

  • В директивы "proxy_cache_path", "fastcgi_cache_path", "scgi_cache_path" и "uwsgi_cache_path" добавлен параметр "min_free", регулирующий размер кэша на основе определения минимального размера свободного дискового пространства.
  • Директивы "lingering_close", "lingering_time" и "lingering_timeout" адаптированы для работы с HTTP/2.
  • Обеспечено отбрасывание всех лишних данных, отправляемых бэкендом.
  • При получении очень короткого ответа от сервера FastCGI, Nginx теперь пытается отправить клиенту доступную часть ответа, после чего закрывает соединение.
  • При получении от бэкенда gRPC ответа некорректной длины, Nginx прекращает обработку запроса с выводом ошибки.
  • Устранены ошибки, например, обеспечено удаление слушающих Unix-сокетов при обработке сигнала SIGQUIT, налажено проксирование UDP-пакетов нулевого размера и проксирование к бэкендам uwsgi при использовании SSL, исправлена обработка ошибок при использовании директивы "ssl_ocsp", исправлен некорректный расчёт размера кэша в ФC XFS и NFS.

Одновременно состоялся выпуск njs 0.4.2, интерпретатора языка JavaScript для веб-сервера nginx. Интерпретатор njs реализует стандарты ECMAScript и позволяет расширять возможности nginx по обработке запросов с помощью скриптов в конфигурации. Скрипты могут использоваться в файле конфигурации для определения расширенной логики обработки запросов, формирования конфигурации, динамической генерации ответа, модификации запроса/ответа или быстрого создания заглушек с решением проблем в web-приложениях. В новой версии добавлена поддержка RegExp.prototype[Symbol.replace] и %TypedArray%.prototype.sort(). Представлена возможность построчной обратной трассировки. В модуль "fs" добавлены функции, подобные mkdir(), readdir() и rmdir().

Кроме того, в министерстве внутренних дел РФ получено подтверждение информации о прекращении уголовного дела о правах на программное обеспечение Nginx, а также о завершении проверки принятого решения надзирающей прокуратурой. "Указанное уголовное дело, возбужденное 04.12.2019 по факту нарушения авторских прав ООО "Рамблер Интернет Холдинг" при разработке программного обеспечения "Nginx", 18.05.2020 прекращено по п. 1 ч. 1 ст. 24 УПК РФ (в связи с отсутствием состава преступления)". Ранее о прекращении уголовного дела сообщил Игорь Сысоев, автор Nginx, но оставалась вероятность отмены данного решения надзорными органами. При этом в суде США продолжается связанное с правами на Nginx разбирательство против компаниии F5 Networks, инициированное после подачи иска юридической фирмой Lynwood Investments.

  1. Главная ссылка к новости (http://mailman.nginx.org/piper...)
  2. OpenNews: Предварительный выпуск nginx с поддержкой QUIC и HTTP/3
  3. OpenNews: Спор о правах Rambler на Nginx продолжен в суде США
  4. OpenNews: Выпуск nginx 1.19.0
  5. OpenNews: Выпуск сервера приложений NGINX Unit 1.18.0
  6. OpenNews: Релиз nginx 1.18.0
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/53307-nginx
Ключевые слова: nginx, njs
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (19) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 10:00, 08/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    про HTTP/3 ничего не слышно?
     
     
  • 2.4, Аноним (4), 11:28, 08/07/2020 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Поговаривают что это ненужно от Гугл.
     
  • 2.5, Аноним (5), 11:34, 08/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > про HTTP/3 ничего не слышно?

    Как обычно, не-гугловые разработчики ждут стабилизации спек и прекращения ломания совместимости.
    Гугловцы отвечают "не дождетесь!"

     
  • 2.7, Аноним (7), 12:17, 08/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Еще 10го июня в отдельном тестовом репе...
     
  • 2.13, Аноним (13), 15:22, 08/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    https://hg.nginx.org/nginx-quic/shortlog/quic
     

  • 1.2, m.makhno (ok), 10:14, 08/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Рамблер, до свидания 👋
     
     
  • 2.19, Аноним (19), 12:05, 09/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Рамблер в аду.
     

  • 1.3, Аноним (4), 11:26, 08/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Почти 8 месяцев для закрытия дела? Однако. Хорошо хоть Сысоев не в СИЗО сидел все это время.
     
     
  • 2.6, Аноним (5), 11:35, 08/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    У него есть шанс посидеть в США.
    Хорошо хоть, что не с неграми (их теперь повыпускали).
     
     
  • 3.14, Аноним (14), 15:26, 08/07/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    У него есть возможность находиться в безопасности в РФ. Если такую глупость, как паспорт потенциального противника не получил, то вообще никих проблем.
     
     
  • 4.20, Вэйхуа (?), 07:02, 13/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А почему "паспорт потенциального противника" - глупость?

    Кстати, мысль в голову пришла, вот само выражение - "потенциальный противник", оно же некорректно: оно предполагает и наличие класса "не противников", но такого класса нет, даже среди самых в доску "братских народов". Да, пожалуй, и быть не может - у нас район на район выходили биться цепями, кастетами и кистенями, насмерть. Так что даже "братских РАЙОНОВ" не бывает, не то что народов. А значит и "не-противников" нет, вот, скажем, решим решить что-нибудь с Белоруссией и... все - Белоруссия уже не потенциальный, а прямо-таки реальный противник, с минами там, реактивными снарядами и ДРГ... Или братский Казахстан вот еще. Короче с математической точки зрения лажу ты сказал, братан, словесное клише, слово-паразит: часто используют, но смысла оно, по-моему, не имеет никакого вообще.

     

  • 1.8, САНДРО (?), 12:20, 08/07/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Как часто есть потребность в использовании njs? В каких кейсах?
    Это действительно настолько востребованный функционал?
    Имхо, похоже на какие то официально легализованные костыли, чем на что-то реально стоящее.
     
     
  • 2.9, НяшМяш (ok), 13:20, 08/07/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Если запилили интерпретатор, значит была в этом потребность. Например, ты всю жизнь клепал микросервисы на ноде, но устал от её глюков. А тут у nginx почти готовое решение на знакомом JS, которого хватит для простенького обработчика.
     
     
  • 3.10, Аноним (5), 13:22, 08/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Хорошо, что разработчики на Lua не считают свои творения "микросервисами". А то OpenResty существует уже давно.
     
     
  • 4.11, НяшМяш (ok), 13:56, 08/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ну Lua таки не JS, для многих это критично.
     
  • 4.12, Аноним (12), 14:21, 08/07/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    О да, классно они там существуют.
     
  • 2.15, Moomintroll (ok), 16:19, 08/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Как часто есть потребность в использовании njs? В каких кейсах?

    Ну вот, например:

    https://github.com/TuxInvader/nginx-dns

    P.S. Да, использую на VPS.

     
  • 2.17, Ilya Indigo (ok), 21:59, 08/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    У меня уже давно чешутся руки логи им форматировать, точнее представление даты в логах.
    По-нормальному, нативно, как в индейце они делать не хотят.
     
  • 2.18, СССР (?), 23:20, 08/07/2020 [^] [^^] [^^^] [ответить]  
  • +/
    это возможность гибкой настройки сервера на обработку запросов
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру