Dopo un anno di sviluppo новая стабильная ветка высокопроизводительного HTTP-сервера и многопротокольного прокси-сервера , которая вобрала в себя изменения, накопленные в рамках основной ветки 1.17.x. В дальнейшем все изменения в стабильной ветке 1.18 будут связаны с устранением серьёзных ошибок и уязвимостей. В скором времени будет сформирована основная ветка nginx 1.19, в рамках которой будет продолжено развитие новых возможностей. Для обычных пользователей, у которых нет задачи обеспечить совместимость со сторонними модулями, использовать основную ветку, на базе которой раз в три месяца формируются выпуски коммерческого продукта Nginx Plus.
В соответствии с компании Netcraft nginx используется на 19.56% всех активных сайтов (год назад 20.73%, два года назад 21.02%), что соответствует второму месту по популярности в данной категории (доля Apache соответствует 27.64%, Google — 10.03%, Microsoft IIS — 4.77%). При этом при рассмотрении всех сайтов nginx сохраняет лидерство и занимает 36.91% рынка (год назад 27.52%), в то время как доля Apache соответствует 24.73%, Microsoft IIS — 12.85%, Google — 3.42%.
Среди миллиона самых посещаемых сайтов в мире доля nginx составляет 25.54% (год назад 26.22%, два года назад 23.76%). В настоящее время под управлением nginx работает около 459 млн сайтов (год назад 397 млн). По W3Techs nginx используется на 31.9% сайтах из миллиона самых посещаемых, в апреле прошлого года этот показатель составлял 41.8%, позапрошлого — 38% (спад объясняется переходом к отдельному учёту http-сервера Cloudflare). Доля Apache за год снизилась с 43.6% до 38.9%, а доля Microsoft IIS с 8.6% до 8.3%. В России nginx на 78.9% самых посещаемых сайтов (год назад — 81%).
Наиболее заметные улучшения, добавленные в процессе формирования основной ветки 1.17.x:
- È stata aggiunta la direttiva , 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;
- È stata aggiunta la direttiva , переводящая модуль ngx_http_limit_conn_module в режим пробного запуска, при котором число соединений не ограничивается, но учитывается;
- Добавлена директива ««, позволяющая добавить задержку неавторизованных запросов с кодом ответа 401 для сокращения интенсивности подбора паролей и защиты от , манипулирующих измерением времени выполнения операций (timing attack) при обращении к системам, доступ к которым ограничен , o (JSON Web Token);
- Добавлена поддержка переменных в директивах «limit_rate» и «limit_rate_after», а также в директивах «proxy_upload_rate» и «proxy_download_rate» модуля stream;
- В директиве добавлена поддержка использования переменной в параметре, определяющем адрес. Если адрес указан в виде доменного имени, имя ищется среди описанных групп серверов, и, если не найдено, то определяется с помощью resolver’а;
- Добавлены новые переменные e , которые содержат адрес и порт сервера, полученные из заголовка протокола PROXY;
- Nel modulo добавлена переменная , которая хранит результат ограничения числа соединений: PASSED, REJECTED или REJECTED_DRY_RUN;
- Nel modulo добавлена переменная , которая хранит результат ограничения скорости поступления запросов: PASSED, DELAYED, REJECTED, DELAYED_DRY_RUN или REJECTED_DRY_RUN;
- По умолчанию обеспечена сборка модуля ;
- È stata aggiunta la supporto per la commutazione dei blocchi nominati «location» tramite il metodo $r->internal_redirect(), fornito dall'interprete Perl integrato. Questo metodo ora gestisce URI con caratteri escape;
- Utilizzando nel blocco di configurazione «upstream» la direttiva «» 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);
- Добавлена поддержка вызова ioctl(FIONREAD), если он доступен, чтобы избежать чтения из быстрого соединения в течение долгого времени.
Fonte: opennet.ru
