Efter ett Ärs utveckling den nya stabila grenen av den högpresterande HTTP-servern och den multiprotokollproxy-servern , som samlade förÀndringar frÄn huvudgren 1.15.x. I framtiden kommer alla Àndringar i den stabila grenen 1.16 att relateras till att ÄtgÀrda allvarliga fel och sÄrbarheter. Snart kommer huvudgrenen nginx 1.17 att bildas, dÀr utvecklingen av nya funktioner kommer att fortsÀtta. För vanliga anvÀndare som inte har behov av att sÀkerstÀlla kompatibiliteten med tredjepartsmjukvara, bör anvÀnda den huvudsakliga grenen, pÄ vilken kommersiella produkter Nginx Plus publiceras var tredje mÄnad.
De mest mÀrkbara förbÀttringarna som lagts till under bildandet av huvudgrenen 1.15.x:
- Möjligheten att anvĂ€nda variabler i direktiven ââ och ââ, vilket kan anvĂ€ndas för dynamisk laddning av certifikat;
- Möjligheten att ladda SSL-certifikat och hemliga nycklar frÄn variabler utan att anvÀnda mellanliggande filer;
- I blocket «» har en ny direktiv «« implementerats, som gör det möjligt att organisera lastbalansering med slumpmÀssigt urval av server för att vidarebefordra anslutningen;
- I modulen en variabel har implementerats ,
som definierar den högsta versionen av SSL/TLS-protokollet som klienten stöder. Variabeln gör det möjligt att för Ätkomst med olika protokoll bÄde med SSL och utan SSL via en nÀtverksport nÀr trafik proxas med hjÀlp av http- och stream-moduler. Till exempel, för att ordna Ätkomst via SSH och HTTPS genom en port. Standardport 443 kan vidarebefordras till SSH, men om en SSL-version anges kan den vidarebefordras till HTTPS. - I upstream-modulen har en ny variabel «« lagts till, som visar antalet byte som har skickats till servers grupp;
- I modulen inom en session har möjligheten att bearbeta flera inkommande UDP-datagram frÄn klienten lagts till;
- I stream-modulen har en direktiv «« lagts till, som anger antalet datagram som tagits emot frÄn klienten, vid vilket bindningen mellan klienten och den befintliga UDP-sessionen tas bort. Efter att det angivna antalet datagram har mottagits, börjar nÀsta datagram som tas emot frÄn samma klient en ny session;
- I direktivet listen har det lagts till möjlighet att ange portintervall;
- En direktiv "» för att aktivera lÀget Vid anvÀndning av TLSv1.3, som tillÄter att tidigare överenskomna parametrar för TLS-anslutning bevaras och minskar antalet RTT till 2 vid Äterupptagning av en tidigare etablerad anslutning;
- För att konfigurera keepalive för utgÄende anslutningar (att aktivera eller inaktivera alternativet SO_KEEPALIVE för sockets) har nya direktiv lagts till:
- «» â konfigurerar beteendet för 'TCP keepalive' för utgĂ„ende anslutningar till den proxyserven;
- «» â konfigurerar beteendet för 'TCP keepalive' för utgĂ„ende anslutningar till FastCGI-servern;
- «» â konfigurerar beteendet för 'TCP keepalive' för utgĂ„ende anslutningar till gRPC-servern;
- «» â konfigurerar beteendet för 'TCP keepalive' för utgĂ„ende anslutningar till memcached-servern;
- «» â konfigurerar beteendet för 'TCP keepalive' för utgĂ„ende anslutningar till SCGI-servern;
- «» â konfigurerar beteendet för 'TCP keepalive' för utgĂ„ende anslutningar till uwsgi-servern.
- I direktivet ' har en ny parameter 'delay' lagts till, som sÀtter en grÀns, vid vilken överskjutande begÀrningar fördröjs;
- Nya direktiv 'keepalive_timeout' och 'keepalive_requests' har lagts till i blocket 'upstream' för att ange grÀnser för Keepalive;
- Direktivet 'ssl' har förklarats förÄldrat, och ersatts av parametern 'ssl' i direktivet 'listen'. Identifiering av saknade SSL-certifikat utförs nu under testningssteget av konfigurationen nÀr 'listen'-instÀllningar med parametern 'ssl' anvÀnds;
- Vid anvÀndning av direktivet reset_timedout_connection stÀngs nu anslutningar som har överskridit tidsgrÀnsen med kod 444;
- SSL-fel 'http request', 'https proxy request', 'unsupported protocol' och 'version too low' visas nu i loggen med nivÄn 'info' istÀllet för 'crit';
- Stöd för metoden poll har lagts till pÄ Windows-system vid anvÀndning av Windows Vista och nyare;
- Möjlighet har sÀkerstÀllts att anvÀnda vid kompilering med BoringSSL-biblioteket, och inte bara med OpenSSL.
KĂ€lla: opennet.ru
