Po 11 miesiącach rozwoju, uruchomienie nowa stabilna gałąź wysokowydajnego serwera HTTP i wieloprotokołowego serwera proxy nginx 1.24.0, która obejmuje skumulowane zmiany w głównej gałęzi 1.23.x.
W przyszłości wszystkie zmiany w stabilnej gałęzi 1.24 będą związane z usuwaniem poważnych błędów i luk. Wkrótce powstanie główna gałąź nginx 1.25, w której kontynuowany będzie rozwój nowych funkcjonalności.
Według marcowego raportu firmy Netcraft, nginx jest używany na 18,94% wszystkich aktywnych witryn (20,08% rok temu, 20,15% dwa lata temu), co jest drugą najpopularniejszą witryną w tej kategorii (udział Apache odpowiada 20,52% (22,58% % rok temu, dwie platformy oparte o nginx i LuaJIT) – 7,94% (8,01%).
Główne nowości w nginx 1.24.0
W tej nowej wersji, która pochodzi z nginx 1.24.0 Protokół TLSv1.3 jest domyślnie włączony Chodzi o to, że zawiera wiele ulepszeń w zakresie bezpieczeństwa i wydajności, a także pomaga jeszcze bardziej przyspieszyć szyfrowane połączenia dzięki opcjom takim jak fałszywy start TLS i zerowy czas podróży w obie strony (0RTT).
Kolejną zauważalną zmianą w nowej wersji jest to, że w dyrektywie ssl_session_cache zapewniliśmy automatyczną rotację klucza szyfrowania dla biletów sesji TLS, które są używane podczas korzystania z pamięci współdzielonej.
W systemie Windows dodano obsługę postacie, których nie ma ASCII w nazwach plików do modułów ngx_http_autoindex_module i ngx_http_dav_module, a także dyrektywy include. W systemie Windows nginx jest również zbudowany z OpenSSL 3.0.
z inne zmiany które wyróżniają się na tle nginx 1.24.0:
- Dodano obsługę zmiennych „$proxy_protocol_tlv_*”, które przechowują wartości pól TLV (Type-Length-Value) występujących w protokole PROXY v2 Type-Length-Value.
- Dodano obsługę zakresów bajtów do modułu ngx_http_gzip_static_module.
- Dodano parametr ipv4=off do dyrektywy resolvera, który umożliwia wyłączenie wyszukiwania adresów IPv4 podczas rozpoznawania nazw i adresów.
- Przeprojektowany wewnętrzny interfejs API, wiersze nagłówka są teraz przekazywane jako połączona lista.
- Zapewniono konkatenację łańcuchów nagłówków o identycznych nazwach, gdy są przekazywane do backendów FastCGI, SCGI i uwsgi, w metodzie $r->header_in() modułu ngx_http_perl_module i w zmiennych „$http_…”, „$sent_http_…”, „$ sent_trailer_… ”, „$upstream_http_…” i „$upstream_trailer_…”.
- Dodano ostrzeżenie w przypadku nadpisania konfiguracji protokołów używanych dla gniazda nasłuchującego.
- Poziom rejestrowania wielu błędów SSL został obniżony z krytycznego do informacyjnego.
- Zoptymalizowane zużycie pamięci w konfiguracjach z proxy SSL.
- Zmiana: Poziom dziennika „zbyt długa długość danych”, „zbyt krótka długość”, „zła starsza wersja”, „brak współdzielonych algorytmów podpisu”, „zła długość skrótu”, „brakujące rozszerzenie sigalgs”, „zaszyfrowana długość za długa” » , „zła długość”, „zła aktualizacja klucza”, „mieszane dane uzgadniania i dane bez uzgadniania”, „wczesne odebranie ccs”, „dane między ccs a zakończeniem”, „zbyt długa długość pakietu”, „zbyt wiele alertów ostrzegawczych”, „ rekord za mały” i „dostał płetwę przed CCS”.
W końcu jeśli chcesz dowiedzieć się więcej na ten temat możesz sprawdzić szczegóły W poniższym linku.
Dla zwykłych użytkowników, którzy nie mają za zadanie zapewnienia kompatybilności z modułami firm trzecich, zaleca się skorzystanie z głównej gałęzi, na podstawie której co trzy miesiące tworzone są wersje komercyjnego produktu Nginx Plus.
Pobierz nginx 1.24.0
Osoby zainteresowane uzyskaniem nowej wersji muszą wykonać następujące czynności, w zależności od przypadku ich dystrybucji.
W przypadku RHEL i pochodnych musisz dodać repozytorium za pomocą następującego polecenia:
sudo nano /etc/yum.repos.d/nginx.repo
I dodaj to na koniec
[nginx] name=nginx repo baseurl=https://nginx.org/packages/rhel/$releasever/$basearch/ gpgcheck=0 enabled=1
Instalujemy za pomocą:
dnf install nginx
W przypadku Ubuntu i jego pochodnych muszą wpisać:
sudo nano etc/apt/sources.list.d/nginx.list
I dodaj to do pliku:
deb https://nginx.org/packages/ubuntu/ $(lsb_release -sc) nginx deb-src https://nginx.org/packages/ubuntu/ $(lsb_release -sc) nginx
I przystępujemy do instalacji za pomocą:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys $key sudo apt update sudo apt install nginx
Wreszcie, dla tych, którzy wolą kompilację pakietu, można to zrobić za pomocą następujących poleceń (po pobraniu i znalezieniu się w katalogu kodu):
./configure make sudo make install