Вышла стабильная ветка Nginx 1.26.0. В неё вошли изменения из mainline 1.25.x. Дальше в 1.26 ждут в основном исправления ошибок и уязвимостей; новая функциональность пойдёт в ветку 1.27. Если не завязаны на сторонние модули со своей сборкой, для обычной эксплуатации обычно берут стабильную ветку (на её базе раз в квартал выходит Nginx Plus).
По мартовскому отчёту Netcraft Nginx обслуживает порядка 243 млн сайтов (чуть меньше, чем годом ранее). По охвату всех сайтов он по-прежнему впереди Apache, Cloudflare и OpenResty. Среди топ-миллиона доля заметная, но год к году слегка просела.
Что нового в 1.26.0
- Экспериментальная поддержка HTTP/3 через модуль
ngx_http_v3(QUIC вместо классической связки TCP+TLS). - Новая директива
http2для настройки HTTP/2; параметрhttp2вlistenпомечен устаревшим. - Жёстче защита от DoS по HTTP/2: лимиты на число запросов и меры против flood.
- В модуле stream можно конфигурировать виртуальные серверы через
server_name. - Модуль
ngx_stream_pass_module: проброс соединений в другие слушающие сокеты. - У
listenв stream появились новые параметры управления соединениями. - Доработаны буферы и работа при большом числе
location. - Убраны Server push в HTTP/2 и устаревшая директива
ssl.
stream и server_name
server {
server_name ~^(www\.)?(.+)$;
proxy_pass www.$2:12345;
}
ngx_stream_pass_module
stream {
server {
listen 12345 ssl;
ssl_certificate domain.crt;
ssl_certificate_key domain.key;
pass 127.0.0.1:8000;
}
}
Параллельно вышел стабильный FreeNginx 1.26.0, форк Nginx. Проект ведёт Максим Дунин; позиционируется как некоммерческая альтернатива без корпоративного давления.
