ఒక సంవత్సరం అభివృద్ధి తర్వాత ద్వారా ప్రాతినిధ్యం వహిస్తుంది అధిక-పనితీరు గల HTTP సర్వర్ మరియు మల్టీప్రొటోకాల్ ప్రాక్సీ సర్వర్ యొక్క కొత్త స్థిరమైన శాఖ nginx 1.16.0, ఇది ప్రధాన శాఖ 1.15.x లోపల పేరుకుపోయిన మార్పులను గ్రహించింది. భవిష్యత్తులో, స్థిరమైన శాఖ 1.16లోని అన్ని మార్పులు తీవ్రమైన లోపాలు మరియు దుర్బలత్వాల తొలగింపుకు సంబంధించినవి. nginx 1.17 యొక్క ప్రధాన శాఖ త్వరలో ఏర్పడుతుంది, దానిలో కొత్త ఫీచర్ల అభివృద్ధి కొనసాగుతుంది. మూడవ పక్షం మాడ్యూళ్ళతో అనుకూలతను నిర్ధారించే పని లేని సాధారణ వినియోగదారుల కోసం, సిఫార్సు ప్రధాన శాఖను ఉపయోగించండి, దీని ఆధారంగా వాణిజ్య ఉత్పత్తి Nginx Plus యొక్క విడుదలలు ప్రతి మూడు నెలలకు ఏర్పడతాయి.
1.15.x అప్స్ట్రీమ్ బ్రాంచ్ అభివృద్ధి సమయంలో జోడించిన అత్యంత ముఖ్యమైన మెరుగుదలలు:
'డైరెక్టివ్లలో వేరియబుల్స్ని ఉపయోగించగల సామర్థ్యం జోడించబడిందిssl_సర్టిఫికేట్'మరియు'ssl_certificate_key', ఇది డైనమిక్గా సర్టిఫికెట్లను లోడ్ చేయడానికి ఉపయోగించవచ్చు;
ఇంటర్మీడియట్ ఫైల్లను ఉపయోగించకుండా వేరియబుల్స్ నుండి SSL ప్రమాణపత్రాలు మరియు రహస్య కీలను లోడ్ చేయగల సామర్థ్యాన్ని జోడించారు;
బ్లాక్ లో "అప్స్ట్రీమ్» కొత్త ఆదేశం అమలుయాదృచ్ఛిక“, దీని సహాయంతో మీరు కనెక్షన్ని ఫార్వార్డ్ చేయడానికి సర్వర్ యొక్క యాదృచ్ఛిక ఎంపికతో లోడ్ బ్యాలెన్సింగ్ను నిర్వహించవచ్చు;
మాడ్యూల్ లో ngx_stream_ssl_preread వేరియబుల్ అమలు చేయబడింది $ssl_preread_protocol,
ఇది క్లయింట్ మద్దతిచ్చే SSL/TLS ప్రోటోకాల్ యొక్క అత్యధిక సంస్కరణను నిర్దేశిస్తుంది. వేరియబుల్ అనుమతిస్తుంది కాన్ఫిగరేషన్లను సృష్టించండి http మరియు స్ట్రీమ్ మాడ్యూల్లను ఉపయోగించి ట్రాఫిక్ను ప్రాక్సీ చేస్తున్నప్పుడు ఒక నెట్వర్క్ పోర్ట్ ద్వారా SSLతో మరియు లేకుండా వివిధ ప్రోటోకాల్లను ఉపయోగించడం కోసం. ఉదాహరణకు, ఒక పోర్ట్ ద్వారా SSH మరియు HTTPS ద్వారా యాక్సెస్ని నిర్వహించడానికి, పోర్ట్ 443ని డిఫాల్ట్గా SSHకి ఫార్వార్డ్ చేయవచ్చు, అయితే SSL వెర్షన్ నిర్వచించబడితే, HTTPSకి ఫార్వార్డ్ చేయబడుతుంది.
అప్స్ట్రీమ్ మాడ్యూల్కు కొత్త వేరియబుల్ జోడించబడింది "$upstream_bytes_sent", ఇది సమూహ సర్వర్కు బదిలీ చేయబడిన బైట్ల సంఖ్యను ప్రదర్శిస్తుంది;
మాడ్యూల్ చేయడానికి స్ట్రీమ్ ఒక సెషన్లో, క్లయింట్ నుండి అనేక ఇన్కమింగ్ UDP డేటాగ్రామ్లను ప్రాసెస్ చేయగల సామర్థ్యం జోడించబడింది;
ఆదేశం"ప్రాక్సీ_అభ్యర్థనలు", క్లయింట్ నుండి స్వీకరించబడిన డేటాగ్రామ్ల సంఖ్యను నిర్దేశిస్తుంది, క్లయింట్ మరియు ఇప్పటికే ఉన్న UDP సెషన్ మధ్య బైండింగ్ తీసివేయబడుతుంది. పేర్కొన్న డేటాగ్రామ్ల సంఖ్యను స్వీకరించిన తర్వాత, అదే క్లయింట్ నుండి స్వీకరించబడిన తదుపరి డేటాగ్రామ్ కొత్త సెషన్ను ప్రారంభిస్తుంది;
వినండి డైరెక్టివ్ ఇప్పుడు పోర్ట్ పరిధులను పేర్కొనే సామర్థ్యాన్ని కలిగి ఉంది;
ఆదేశం జోడించబడింది"ssl_early_data» మోడ్ను ప్రారంభించడానికి 0-RTT TLSv1.3ని ఉపయోగిస్తున్నప్పుడు, ఇది గతంలో చర్చలు జరిపిన TLS కనెక్షన్ పారామితులను సేవ్ చేయడానికి మరియు గతంలో ఏర్పాటు చేసిన కనెక్షన్ని పునఃప్రారంభించేటప్పుడు RTTల సంఖ్యను 2కి తగ్గించడానికి మిమ్మల్ని అనుమతిస్తుంది;
అవుట్గోయింగ్ కనెక్షన్ల కోసం కీపలైవ్ని కాన్ఫిగర్ చేయడానికి కొత్త ఆదేశాలు జోడించబడ్డాయి (సాకెట్ల కోసం SO_KEEPALIVE ఎంపికను ప్రారంభించడం లేదా నిలిపివేయడం):
«uwsgi_socket_keepalive" - uwsgi సర్వర్కు అవుట్గోయింగ్ కనెక్షన్ల కోసం "TCP కీపాలివ్" ప్రవర్తనను కాన్ఫిగర్ చేస్తుంది.
ఆదేశంలో "పరిమితి_req" కొత్త పరామితి “ఆలస్యం” జోడించబడింది, ఇది పరిమితిని సెట్ చేస్తుంది, దాని తర్వాత అనవసరమైన అభ్యర్థనలు ఆలస్యం అవుతాయి;
Keepalive కోసం పరిమితులను సెట్ చేయడానికి “upstream” బ్లాక్కి “keepalive_timeout” మరియు “keepalive_requests” అనే కొత్త ఆదేశాలు జోడించబడ్డాయి;
"ssl" ఆదేశం నిలిపివేయబడింది, "వినండి" ఆదేశంలోని "ssl" పరామితితో భర్తీ చేయబడింది. సెట్టింగులలో “ssl” పరామితితో “వినండి” ఆదేశాన్ని ఉపయోగిస్తున్నప్పుడు తప్పిపోయిన SSL ప్రమాణపత్రాలు ఇప్పుడు కాన్ఫిగరేషన్ పరీక్ష దశలో కనుగొనబడ్డాయి;
reset_timedout_connection డైరెక్టివ్ని ఉపయోగిస్తున్నప్పుడు, గడువు ముగిసినప్పుడు కనెక్షన్లు ఇప్పుడు 444 కోడ్తో మూసివేయబడతాయి;
SSL లోపాలు "http అభ్యర్థన", "https ప్రాక్సీ అభ్యర్థన", "మద్దతు లేని ప్రోటోకాల్" మరియు "వెర్షన్ చాలా తక్కువ" ఇప్పుడు లాగ్లో "crit"కి బదులుగా స్థాయి "సమాచారం"తో ప్రదర్శించబడతాయి;
Windows Vista మరియు తదుపరి వాటిని ఉపయోగిస్తున్నప్పుడు Windows సిస్టమ్లలో పోల్ పద్ధతికి మద్దతు జోడించబడింది;
ఉపయోగించుకునే అవకాశం TLSv1.3 BoringSSL లైబ్రరీతో నిర్మించేటప్పుడు, OpenSSL మాత్రమే కాదు.