nginx 1.16.0 መለቀቅ

ከአንድ አመት እድገት በኋላ የተወከለው በ ከፍተኛ አፈጻጸም ያለው HTTP አገልጋይ እና ባለብዙ ፕሮቶኮል ተኪ አገልጋይ አዲስ የተረጋጋ ቅርንጫፍ ሲንክስ 1.16.0በዋናው ቅርንጫፍ ውስጥ የተጠራቀሙ ለውጦችን የወሰደ 1.15.x. ለወደፊቱ, በተረጋጋው ቅርንጫፍ 1.16 ላይ የተደረጉ ለውጦች ሁሉ ከባድ ስህተቶችን እና ድክመቶችን ከማስወገድ ጋር የተያያዙ ናቸው. የ nginx 1.17 ዋናው ቅርንጫፍ በቅርቡ ይመሰረታል, በውስጡም የአዳዲስ ባህሪያት እድገት ይቀጥላል. ከሶስተኛ ወገን ሞጁሎች ጋር ተኳሃኝነትን የማረጋገጥ ተግባር ለሌላቸው ተራ ተጠቃሚዎች፣ ይመከራል ፡፡ በየሶስት ወሩ የ Nginx Plus የንግድ ምርት የሚለቀቀውን መሠረት በማድረግ ዋናውን ቅርንጫፍ ይጠቀሙ።

በ1.15.x የላይኛው ተፋሰስ ቅርንጫፍ ልማት ወቅት የታከሉ በጣም የታወቁ ማሻሻያዎች፡-

  • ተለዋዋጮችን በ'መመሪያዎች የመጠቀም ችሎታ ታክሏል።ssl_ሰርቲፊኬት'እና'ኤስኤስኤል_ሰርቲፊኬት_ቁልፍየምስክር ወረቀቶችን በተለዋዋጭ ለመጫን የሚያገለግል;
  • መካከለኛ ፋይሎችን ሳይጠቀሙ የኤስኤስኤል የምስክር ወረቀቶችን እና ሚስጥራዊ ቁልፎችን ከተለዋዋጮች የመጫን ችሎታ ታክሏል;
  • በብሎክ ውስጥ"ከምንጭ» አዲስ መመሪያ ተግባራዊ ሆኗል »ያለብለኀት“ግንኙነቱን ለማስተላለፍ በዘፈቀደ የአገልጋይ ምርጫ የጭነት ሚዛንን ማደራጀት በሚችሉበት እገዛ ፣
  • በሞጁሉ ውስጥ ngx_ዥረት_ssl_ቅድመ አንብብ ተለዋዋጭ ተተግብሯል $ssl_preread_protocol,
    ደንበኛው የሚደግፈውን ከፍተኛውን የSSL/TLS ፕሮቶኮል ስሪት ይገልጻል። ተለዋዋጭው ይፈቅዳል አወቃቀሮችን መፍጠር http እና ዥረት ሞጁሎችን በመጠቀም ትራፊክን በሚወክሉበት ጊዜ ከኤስኤስኤል ጋር እና ያለሱ የተለያዩ ፕሮቶኮሎችን በመጠቀም በአንድ የአውታረ መረብ ወደብ በኩል ለመድረስ። ለምሳሌ በኤስኤስኤች እና በኤችቲቲፒኤስ በኩል መዳረሻን በአንድ ወደብ ለማደራጀት ወደብ 443 በነባሪ ወደ ኤስኤስኤች ሊተላለፍ ይችላል ነገር ግን የኤስኤስኤል ስሪት ከተገለጸ ወደ HTTPS ያስተላልፉ።

  • አዲስ ተለዋዋጭ ወደ ላይኛው ሞጁል ታክሏል"$ ወደላይ_ባይት_ተልኳል።", ወደ የቡድን አገልጋይ የተላለፉ ባይት ብዛት ያሳያል;
  • ወደ ሞጁሉ ዥረት በአንድ ክፍለ ጊዜ ውስጥ ከደንበኛው የሚመጡ በርካታ የ UDP ዳታግራሞችን የማስኬድ ችሎታ ተጨምሯል ።
  • መመሪያው "የተኪ_ጥያቄዎች", ከደንበኛው የተቀበሉትን የውሂብ ግራም ብዛት ይገልፃል, ከደረሰ በኋላ በደንበኛው እና ባለው የ UDP ክፍለ ጊዜ መካከል ያለው ትስስር ይወገዳል. የተገለጹትን የዳታግራም ብዛት ከተቀበለ በኋላ ፣ ከተመሳሳይ ደንበኛ የተቀበለው የሚቀጥለው ዳታግራም አዲስ ክፍለ ጊዜ ይጀምራል ።
  • የአድማጭ መመሪያው አሁን የወደብ ክልሎችን የመግለጽ ችሎታ አለው፤
  • መመሪያ ታክሏል"የኤስኤስኤል_የመጀመሪያ_ውሂብ» ሁነታውን ለማንቃት 0-አርቲቲ ቀደም ሲል የተደራደሩትን የ TLS ግንኙነት መለኪያዎችን ለማስቀመጥ እና ቀደም ሲል የተቋቋመውን ግንኙነት እንደገና ሲጀምሩ የ RTT ን ቁጥር ወደ 1.3 እንዲቀንሱ የሚያስችልዎትን TLSv2 ሲጠቀሙ;
  • ለወጪ ግኑኝነቶች (የ SO_KEEPALIVE አማራጭ ለሶኬቶችን ማሰናከል) ለማዋቀር አዲስ መመሪያዎች ታክለዋል፡-

    • «ፕሮክሲ_ሶኬት_ያቆይ"- ከተኪ አገልጋይ ጋር ለሚደረጉ ግንኙነቶች የ"TCP keepalive" ባህሪን ያዋቅራል;
    • «fastcgi_socket_keepalive"- ከ FastCGI አገልጋይ ጋር ለሚደረጉ ግንኙነቶች የ"TCP keepalive" ባህሪን ያዋቅራል;
    • «grpc_socket_keepalive"- ከ gRPC አገልጋይ ጋር ለሚደረጉ ግንኙነቶች የ"TCP keepalive" ባህሪን ያዋቅራል;
    • «የተሸጎጠ_ሶኬት_ይቆያል" - ከተቀጠረ አገልጋይ ጋር ለሚደረጉ ግንኙነቶች የ"TCP keepalive" ባህሪን ያዋቅራል;
    • «scgi_socket_keepalive"- ከ SCGI አገልጋይ ጋር ለሚደረጉ ግንኙነቶች የ"TCP keepalive" ባህሪን ያዋቅራል;
    • «uwsgi_socket_keepalive"- ከ uwsgi አገልጋይ ጋር ለሚደረጉ ግንኙነቶች የ"TCP keepalive" ባህሪን ያዋቅራል።
  • በመመሪያው ውስጥ "ገደብ_req" አዲስ ግቤት "ዘግይቷል" ታክሏል, ይህም ተደጋጋሚ ጥያቄዎች እንዲዘገዩ ገደብ ያስቀምጣል;
  • አዲስ መመሪያዎች "Kepalive_timeout" እና "Kepalive_requests" ወደ "የላይቭዥን" ብሎክ ለ Keepalive ገደቦችን ለማዘጋጀት ተጨምረዋል፤
  • የ"ssl" መመሪያ ተቋርጧል፣ በ "አዳምጥ" መመሪያ ውስጥ በ "ssl" መለኪያ ተተክቷል። የጠፉ የኤስኤስኤል ሰርተፊኬቶች በቅንብሮች ውስጥ የ"ssl" ግቤት ያለው የ"ማዳመጥ" መመሪያን ሲጠቀሙ በማዋቀር ሙከራ ደረጃ ላይ ተገኝተዋል።
  • የreset_timedout_ግንኙነት መመሪያውን ሲጠቀሙ፣ ጊዜው ሲያልቅ ግንኙነቶች አሁን በ444 ኮድ ይዘጋሉ።
  • የኤስ ኤስ ኤል ስህተቶች "http ጥያቄ"፣ "https ፕሮክሲ ጥያቄ"፣ "የማይደገፍ ፕሮቶኮል" እና "ሥሪት በጣም ዝቅተኛ" አሁን ከ"crit" ይልቅ "መረጃ" ያለው በምዝግብ ማስታወሻው ውስጥ ይታያል።
  • ዊንዶውስ ቪስታን ሲጠቀሙ እና በኋላ ላይ ለድምጽ መስጫ ዘዴ በዊንዶውስ ስርዓቶች ላይ ድጋፍ ታክሏል;
  • የመጠቀም እድል TLSv1.3 OpenSSL ብቻ ሳይሆን በBoringSSL ቤተ-መጽሐፍት ሲገነቡ።

ምንጭ: opennet.ru

አስተያየት ያክሉ