Після 11 місяців розробки, запуск нова стабільна гілка високопродуктивного HTTP-сервера та багатопротокольного проксі-сервера nginx 1.24.0, який містить сукупні зміни в основній гілці 1.23.x.
Надалі всі зміни в гілці 1.24 stable будуть пов'язані з усуненням серйозних помилок і вразливостей. Незабаром буде сформована основна гілка 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".
В кінці кінців якщо вам цікаво дізнатись більше про це Ви можете перевірити деталі У наступному посиланні.
Для рядових користувачів, у яких не стоїть завдання забезпечити сумісність із сторонніми модулями, рекомендується використовувати основну гілку, на основі якої кожні три місяці формуються версії комерційного продукту 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