Nakon godine razvoja nova stabilna grana visokoučinkovitog HTTP poslužitelja i višerazinskog proxy poslužitelja , koja je uključila promjene prikupljene u okviru glavne grane 1.15.x. U budućnosti će sve promjene u stabilnoj grani 1.16 biti usmjerene na otklanjanje ozbiljnih grešaka i ranjivosti. Uskoro će biti formirana glavna grana nginx 1.17, u okviru koje će se nastaviti razvoj novih mogućnosti. Za obične korisnike koji nemaju zadatak osigurati kompatibilnost s vanjskim modulima, preporučuje se korištenje glavne grane, na temelju koje se svaka tri mjeseca formiraju izdanja komercijalnog proizvoda Nginx Plus.
Najistaknutija poboljšanja dodana tijekom formiranja glavne grane 1.15.x:
- Dodana mogućnost korištenja varijabli u direktivama ‘‘ i ‘‘, što se može koristiti za dinamičko učitavanje certifikata;
- Dodana mogućnost učitavanja SSL certifikata i tajnih ključeva iz varijabli bez korištenja međufajlova;
- U dijelu «» implementirana je nova direktiva ««, pomoću koje se može organizirati opterećenje poslužitelja s nasumičnim odabirom poslužitelja za prosljeđivanje veze;
- U modulu implementirana je varijabla ,
koja određuje najvišu verziju SSL/TLS protokola koju klijent podržava. Varijabla omogućava za pristup koristeći različite protokole sa SSL i bez SSL kroz jednu mrežnu port prilikom prosljeđivanja prometa koristeći http i stream module. Na primjer, za organizaciju pristupa putem SSH i HTTPS kroz jednu pristupnu točku 443, zadano se može proslijediti na SSH, ali ako je određena verzija SSL, proslijediti na HTTPS. - U upstream modul dodana je nova varijabla ««, koja prikazuje broj bajtova poslanih na poslužitelj grupe;
- U modul u okviru jedne sesije dodana je mogućnost obrade više dolaznih UDP paketa od klijenta;
- U stream modul dodana je direktiva ««, koja postavlja broj paketa primljenih od klijenta, nakon što se postigne koji se uklanja veza između klijenta i postojeće UDP sesije. Nakon primanja navedenog broja paketa, sljedeći paket primljen od istog klijenta započinje novu sesiju;
- U direktivi listen dodana je mogućnost definiranja raspona portova;
- Dodana je direktiva „“ za uključivanje načina prilikom korištenja TLSv1.3, što omogućuje zadržavanje prethodno dogovorenih TLS parametara veze i smanjenje na 2 RTT-a prilikom obnavljanja ranije uspostavljene veze;
- Za postavljanje keepalive za odlazne veze (uključivanje ili isključivanje opcije SO_KEEPALIVE za sokete) dodane su nove direktive:
- «“ — konfigurira ponašanje „TCP keepalive” za odlazne veze prema poslužitelju koji se proxyira;
- «“ — konfigurira ponašanje „TCP keepalive” za odlazne veze prema FastCGI poslužitelju;
- «“ — konfigurira ponašanje „TCP keepalive” za odlazne veze prema gRPC poslužitelju;
- «“ — konfigurira ponašanje „TCP keepalive” za odlazne veze prema memcached poslužitelju;
- «“ — konfigurira ponašanje „TCP keepalive” za odlazne veze prema SCGI poslužitelju;
- «“ — konfigurira ponašanje „TCP keepalive” za odlazne veze prema uwsgi poslužitelju.
- U direktivu „ “ dodan je novi parametar „delay” koji određuje limit nakon kojeg se višak zahtjeva odgađa;
- U blok „upstream” dodane su nove direktive „keepalive_timeout” i „keepalive_requests” za određivanje limita za Keepalive;
- Direktiva „ssl” je označena kao zastarjela, a zamijenjena je parametrom „ssl” u direktivi „listen”. Utvrđivanje nedostajućih SSL certifikata sada se vrši u fazi testiranja konfiguracije korištenjem u postavkama direktive „listen” s parametrom „ssl”;
- Prilikom korištenja direktive reset_timedout_connection, kada istekne vrijeme veze, sada se zatvaraju s primjenom koda 444;
- SSL greške „http request”, „https proxy request”, „unsupported protocol” i „version too low” sada se evidentiraju u logu s razinom „info” umjesto „crit”;
- Dodana je podrška za metodu poll na sustavima Windows prilikom korištenja Windows Vista i novije;
- Osigurana je mogućnost korištenja prilikom sastavljanja s bibliotekama BoringSSL, a ne samo s OpenSSL-om.
Izvor: opennet.ru
