Nginx е високопроизводителен лек уеб сървър/обратен прокси и прокси
След 11 месеца разработка, стартирането на новият стабилен клон на високопроизводителен HTTP сървър и многопротоколен прокси сървър nginx 1.24.0, който включва кумулативните промени в основния клон 1.23.x.
В бъдеще всички промени в стабилния клон 1.24 ще бъдат свързани с премахването на сериозни грешки и уязвимости. Скоро ще се формира основният клон на nginx 1.25, в който ще продължи разработването на нови функции.
Според мартенския доклад на Netcraft, nginx се използва на 18,94% от всички активни сайтове (20,08% преди една година, 20,15% преди две години), което е вторият най-популярен сайт в тази категория (Дялът на Apache съответства на 20,52% (22,58 % преди година, две платформи, базирани на nginx и LuaJIT) – 7,94% (8,01%).
Основни новини в nginx 1.24.0
В тази нова версия, която идва от nginx 1.24.0 Протоколът TLSv1.3 е активиран по подразбиране И това е, че включва много подобрения в сигурността и производителността, в допълнение към това, че помага да се ускорят още повече криптираните връзки с опции като TLS false start и Zero Round Trip Time (0RTT).
Друга забележителна промяна в новата версия е, че предоставихме автоматична ротация на ключа за шифроване за билети за TLS сесии, които се използват при използване на споделена памет в директивата ssl_session_cache.
В Windows е добавена поддръжка за герои, които не са ASCII в имената на файловете към модулите ngx_http_autoindex_module и ngx_http_dav_module, както и към директивата include. В Windows nginx също е изграден с OpenSSL 3.0.
От други промени които се отличават от nginx 1.24.0:
- Добавена е поддръжка за променливите "$proxy_protocol_tlv_*", които съхраняват стойностите на полетата TLV (Type-Length-Value), които се появяват в протокола PROXY v2 Type-Length-Value.
- Добавена е поддръжка за диапазони от байтове към модула ngx_http_gzip_static_module.
- Добавен е параметърът ipv4=off към директивата за резолвер, който ви позволява да деактивирате търсенето на IPv4 адрес при разрешаване на имена и адреси.
- Преработен вътрешен API, заглавните редове вече се предават като свързан списък.
- Осигурена конкатенация на идентично именувани заглавни низове, когато се предават на FastCGI, SCGI и uwsgi бекенд, в метода $r->header_in() на ngx_http_perl_module и в променливите "$http_…", "$sent_http_…", "$ sent_trailer_…" , „$upstream_http_…“ и „$upstream_trailer_…“.
- Предоставено предупреждение в случай на отмяна на конфигурацията на протоколите, използвани за слушащия сокет.
- Нивото на регистриране на много SSL грешки е понижено от критично на информационно.
- Оптимизирано потребление на памет в конфигурации с SSL прокси.
- Промяна: Ниво на регистрационен файл на „дължина на данните твърде дълга“, „дължина твърде къса“, „лоша наследена версия“, „няма споделени алгоритми за подпис“, „лоша дължина на дайджеста“, „липсващо разширение на sigalgs“, „шифрована дължина твърде дълга“ » , «лоша дължина», «лоша актуализация на ключ», «смесени ръкостискащи и неръкостискащи данни», «ccs получени рано», «данни между ccs и завършени», «дължината на пакета е твърде дълга», «твърде много предупреждения за предупреждение», " записът е твърде малък“ и „получих перка преди ccs“.
Накрая ако се интересувате да научите повече за това можете да проверите подробностите В следващия линк.
За обикновените потребители, които нямат задача да осигурят съвместимост с модули на трети страни, се препоръчва използването на основния клон, въз основа на който се формират версии на търговския продукт Nginx Plus на всеки три месеца.
Вземете nginx 1.24.0
За тези, които се интересуват от възможността да получат новата версия, те трябва да направят следното, в зависимост от случая на тяхното разпространение.
За RHEL и производни, трябва да добавите хранилището със следната команда:
sudo nano /etc/yum.repos.d/nginx.repo
И добавете това накрая
[nginx] name=nginx repo baseurl=https://nginx.org/packages/rhel/$releasever/$basearch/ gpgcheck=0 enabled=1
И ние инсталираме с:
dnf install nginx
Докато за Ubuntu и негови производни, те трябва да въведат следното:
sudo nano etc/apt/sources.list.d/nginx.list
И добавете това към файла:
deb https://nginx.org/packages/ubuntu/ $(lsb_release -sc) nginx deb-src https://nginx.org/packages/ubuntu/ $(lsb_release -sc) nginx
И ние продължаваме да инсталираме с:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys $key sudo apt update sudo apt install nginx
И накрая, за тези, които предпочитат компилирането на пакета, това може да стане със следните команди (веднъж вече изтеглени и намиращи се в кодовата директория):
./configure make sudo make install