Nginx ምን ማለት ነው 1. ተግባራዊ የ Nginx ክልል። ማዋቀር እና ሊተገበር የሚችል ኮድ በማዘመን ላይ

በዓለም ዙሪያ ከ50% በላይ የትራፊክ ፍሰት የሚቀርበው በአፓቼ እና በNginx ቴክኖሎጂ ነው።- ክፍት የሆኑ የድር አገልጋዮች ምንጭ. Nginx የፊት ለፊት ተግባሩን ያከናውናል, Apache የጀርባውን ተግባር ያከናውናል. Nginx የተጠቃሚ ጥያቄዎችን ለመቀበል የመጀመሪያው ነው እና አስፈላጊውን ይዘት - ምስሎች, ፋይሎች, ስክሪፕቶች ምላሽ ይሰጣል. Heavy Apache, በተራው, ይህንን አይመለከትም, ነገር ግን ተለዋዋጭ ሁኔታዎችን ያስኬዳል. የNginx ፕሮክሲ ጥያቄዎች እና መልሶች መመለስ. ይህ ጥምረት በብዙ ተጠቃሚዎች ለሚጎበኙ ትላልቅ ጣቢያዎች ጥሩ ነው. ለአነስተኛ ጣቢያዎች ይህ ዘለላምርታማነትን አይጨምርም. Apache እና Nginx በዚህ ምክንያት በአጠቃላይ በአገልጋዩ ላይ ያለውን ጭነት ይቀንሳሉ Nginx የማይንቀሳቀስ ይዘትን ያስተናግዳል፣ Apache ግን ተለዋዋጭ ይዘትን ይቆጣጠራል።

Apache እና Nginx ብዙ ተመሳሳይ ባህሪያት ቢኖራቸውም ሊለዋወጡ የሚችሉ ቴክኖሎጂዎች ተደርገው ሊወሰዱ አይገባም። እያንዳንዱ የድር አገልጋይ የራሱ ጥቅሞች አሉት እና አጠቃቀሙ በእጁ ላይ ባለው ተግባር ላይ የተመሰረተ ነው. በዚህ ጽሑፍ ውስጥ እንደ አተገባበር ወሰን እያንዳንዱን ቴክኖሎጂ እንመልከታቸው።ጽሑፉ ለምናባዊ እና ለወሰኑ አካላዊ አገልጋዮች ባለቤቶች ጠቃሚ ይሆናል።

ተግባራዊ እና ፈጣን, Nginx በ 2004 ተለቀቀ እና ከዚህ ልቀት በኋላ ታዋቂነቱን ማግኘት ጀመረ. በክብደቱ እና በመጠን መጠኑ ምክንያት በማንኛውም ሃርድዌር ላይ በደንብ ይሰራል። Nginx በሁለት መንገዶች ጥቅም ላይ ይውላል: እንደ ድር አገልጋይ ወይም እንደ ተኪ.

Nginx እንደ ድር አገልጋይ ምን ያደርጋል?

  • በራስ-ሰር የመሸጎጫ ገላጭዎችን እና የፋይል ዝርዝሮችን ይፈጥራል, የመረጃ ጠቋሚ ፋይሎችን እና የማይንቀሳቀሱ ጥያቄዎችን ያቀርባል;
  • ስህተትን መቻቻልን ያፋጥናል, ተኪ እና ጭነት ማመጣጠን;
  • ከ FastCGI ጋር መሸጎጫዎች እና ፕሮክሲንግ ያፋጥናል;
  • SSL ይደግፋል;
  • Perl ይደግፋል;
  • ማጣሪያዎች እና ሞጁሎች አሉት;
  • HTTPን ያረጋግጣል እና SSLን ያጣራል።

እንደ Nginx ፕሮክሲ፡-

  • የ StartTLS እና SSL ሙሉ አቅርቦት;
  • የማረጋገጫ ቀላልነት (USER/PASS, LOGIN);
  • ወደ POP3/IMAP ጀርባ ለማዞር ውጫዊ HTTP አገልጋይ ይጠቀማል።

እንደሚመለከቱት, Nginx ስርዓቱን ሳይጭኑ ብዙ ተግባራትን ያከናውናል. እንደ ኦፊሴላዊ መረጃ ከሆነ ቴክኖሎጂው በዓለም ዙሪያ ከ 56 ሚሊዮን በላይ ጣቢያዎች (ለምሳሌ, Rambler, Yandex, Mail, Begun, WordPress.com, vk.com, Facebook, Rutracker.org) ጥቅም ላይ ይውላል, ነገር ግን Nginx ዝቅተኛ ነው. Apache በታዋቂነት። ለምን Apache በጣም ተወዳጅ የሆነው?

Apache የድር አገልጋይ - መድረክ ሶፍትዌርበ 1995 የተፈጠረው. ለሰፊ ሰነዶች እና ከሶስተኛ ወገን ሶፍትዌር ጋር ጥሩ ውህደት ምስጋና ይግባውና Apache ትልቅ ተወዳጅነት አግኝቷል። የሚከተሉትን ስርዓተ ክወናዎች ይደግፋል - ሊኑክስ ፣ ቢኤስዲ ፣ ማክ ኦኤስ ፣ ማይክሮሶፍት ዊንዶውስ, Novell NetWare፣ ቤኦኤስ .

የ Apache ድር አገልጋይ ጥቅሞች

  • ድጋፍየፕሮግራም ቋንቋዎች PHP፣ Python፣ Ruby፣ Perl፣ ASP፣ Tcl;
  • ውጫዊ ሞጁሎችን የማገናኘት ቀላልነት;
  • የቴክኖሎጂ ድጋፍ CGI እና FastCGI;
  • ደህንነትን እና የመረጃ ተደራሽነትን ልዩነት የሚያረጋግጡ ዘዴዎች መኖር;
  • ለተጠቃሚ ማረጋገጫ DBMS የመጠቀም ችሎታ;
  • ተለዋዋጭ እና አስተማማኝ የስርዓት ውቅር;
  • ለሚፈልጉ መተግበሪያዎች ተስማሚ ኃይለኛ ምስጠራ ጥበቃውሂብ;
  • የመፍጠር ዕድል የተጠቃሚ ማውጫዎችለድር ጣቢያው;
  • ምናባዊ አስተናጋጆችን የማዋቀር ችሎታ, በአንዱ ላይ በየትኛው እርዳታ አካላዊ አገልጋይብዙ ምናባዊ መፍጠር ይችላሉ;
  • በአገልጋይዎ ላይ እየተከሰተ ያለውን ምዝግብ ማስታወሻ ይይዛል;
  • ንቁ ግብረ መልስከገንቢዎች ጋርእና የሶፍትዌር ስህተቶችን በወቅቱ መፍታት.

ግን ሁሉም ጥቅሞች ቢኖሩም Apache የድር አገልጋይለማዋቀር እና ለመስራት ትንሽ አስቸጋሪ ነው ፣ ስለሆነም እያንዳንዱ ጀማሪ ችግሩን መቋቋም አይችልም። ግን ፕሮጄክትዎ ይህንን ልዩ ሶፍትዌር ከፈለገ እርስዎ ያደርጉታል። ትክክለኛ ምርጫ Apache በመደገፍ.

ደህንነትን መጠበቅ ትፈልጋለህ? ፒኤችፒ ስራበአገልጋይ ላይ? በዚህ ላይ ተጨማሪ ዝርዝሮች.

የ Apache እና Nginx ጥቅሞችን እና ጉዳቶችን ካወቁ በኋላ መምረጥ ይችላሉ። ጠቃሚ መፍትሄዎችለድር ጣቢያዎ, እርስዎ በሚከተሏቸው ግቦች ላይ በመመስረት. ግን የ Apache+Nginx ጥምር ያስፈልግህ ይሆናል።ለስኬት ምርጥ ውጤት. ለምሳሌ Nginx ብዙውን ጊዜ ከ Apache ፊት ለፊት እንደ ተገላቢጦሽ ፕሮክሲ ጥቅም ላይ ይውላል። ይህ ጥምረት ብዙ ተወዳዳሪ ጥያቄዎችን እንድታስተናግድ ይፈቅድልሃልእና ይመድቧቸዋል. እነዚያ Nginx የማይችላቸው ጥያቄዎች ወደ Apache ይላካሉ፣ በዚህም የኋለኛውን ጭነት ይቀንሳል። በዚህ ሁኔታ, የስህተት መቻቻል ይጨምራል. የድር አገልጋይ ከመምረጥዎ በፊት በእያንዳንዱ መፍትሄ አፈፃፀም እና አቅም ላይ የግዴታ ሙከራዎችን ማካሄድ ያስፈልግዎታል።

በHyperHost ማስተናገጃ ስለሚደገፉ ሁሉም ቴክኖሎጂዎች የበለጠ መረጃ ለማግኘት እባክዎን ይጎብኙ።

ይህ መጣጥፍ የቀረበው ስለ ድር ማገናኘት ችሎታዎች አጠቃላይ መረጃ ነው። Apache አገልጋዮችእና Nginx. ተጨማሪ ተጨማሪ መረጃቪ.

የእኛን እርዳታ ከፈለጉ እባክዎ ያነጋግሩን!

የድር አገልጋዮችን ስለማዋቀር ሁሉንም ጥያቄዎች ለመመለስ ደስተኞች ነን። እንዲሁም ሁልጊዜ ከእኛ ነፃ አስተዳደር ማግኘት ይችላሉ። ሁሉም ነው? የቴክኒክ እገዛአስተናጋጆች አንድ ናቸው? በልዩ ውስጥ ስለ ነፃ እና የሚከፈልበት አስተዳደር ባህሪዎች።

17248 ጊዜ ዛሬ 9 የታዩ ጊዜዎች

  • ትርጉም

NGINX በአፈጻጸም ረገድ ከምርጥ አገልጋዮች አንዱ ነው፣ እና ይህ ሁሉ ለእሱ ምስጋና ነው። ውስጣዊ መዋቅር. ብዙ የድር እና አፕሊኬሽን ሰርቨሮች ቀላል ባለ ብዙ ክር ሞዴል ሲጠቀሙ፣ NGINX ቀላል ባልሆነ ክስተት ላይ የተመሰረተ አርክቴክቸር ከህዝቡ ጎልቶ ይታያል፣ይህም በቀላሉ ወደ መቶ ሺዎች የሚቆጠሩ ተያያዥ ግንኙነቶችን ለመመዘን ያስችላል።


በNGINX ውስጥ ያለ የስቴት ማሽን በመሠረቱ ጥያቄን ለማስኬድ መመሪያዎች ስብስብ ነው። አብዛኛዎቹ የድር አገልጋዮች ተመሳሳይ ተግባር ያከናውናሉ, ነገር ግን ልዩነቱ በአተገባበሩ ላይ ነው.

የስቴት ማሽን መሳሪያ

ውሱን ግዛት ማሽን ቼዝ ለመጫወት እንደ ህጎች ሊታሰብ ይችላል። እያንዳንዱ የኤችቲቲፒ ግብይት የቼዝ ጨዋታ ነው። በቼዝቦርዱ በአንደኛው በኩል፣ የድር አገልጋዩ በፍጥነት ውሳኔዎችን የሚያደርግ ታላቅ ​​ጌታ ነው። በሌላ በኩል በአንፃራዊ ቀርፋፋ አውታረ መረብ ላይ ጣቢያ ወይም መተግበሪያ የሚጠይቅ የርቀት ደንበኛ፣ አሳሽ አለ።

ሆኖም ግን, የጨዋታው ህጎች በጣም ውስብስብ ሊሆኑ ይችላሉ. ለምሳሌ፣ ዌብ አገልጋዩ ከሌሎች ግብዓቶች ጋር መገናኘት (የኋለኛውን ተኪ ጥያቄዎች) ወይም የማረጋገጫ አገልጋይን ማግኘት ሊኖርበት ይችላል። የሶስተኛ ወገን ሞጁሎች ሂደትን የበለጠ ሊያወሳስቡ ይችላሉ።

የስቴት ማሽን ማገድ

ስርዓተ ክወናው ለአንድ የተወሰነ ፕሮሰሰር ኮር አፈፃፀምን ሊመድበው የሚችለውን የሂደቱን ወይም የክርን ፍቺያችንን እንደ እራስ-የያዘ የመመሪያ ስብስብ እናስታውስ። አብዛኛዎቹ የድር አገልጋዮች እና የድር አፕሊኬሽኖች በአንድ ግንኙነት አንድ ሂደት ወይም ክር ያለው ቼዝ የሚጫወቱበትን ሞዴል ይጠቀማሉ። እያንዳንዱ ሂደት ወይም ክር ለማጠናቀቅ አንድ ጨዋታ ለመጫወት መመሪያዎችን ይዟል። በዚህ ጊዜ ሁሉ በአገልጋዩ ላይ ያለው ሂደት ከደንበኛው የሚቀጥለውን እንቅስቃሴ በመጠባበቅ አብዛኛውን ጊዜውን ታግዶ ያሳልፋል።

  1. የዌብ ሰርቨር ሂደት አዳዲስ ግንኙነቶችን (በደንበኞች የተጀመሩ አዳዲስ ስብስቦችን) በማዳመጥ ሶኬቶች ላይ ይጠብቃል።
  2. አዲስ ግንኙነት ከተቀበለ በኋላ ከእያንዳንዱ እንቅስቃሴ በኋላ በማገድ ከደንበኛው ምላሽ በመጠባበቅ ጨዋታውን ይጫወታል።
  3. አንድ ጨዋታ ሲጫወት የድር አገልጋይ ሂደቱ ደንበኛው የሚቀጥለውን ጨዋታ እስኪጀምር ድረስ እየጠበቀ ሊሆን ይችላል (ይህ ከረጅም ጊዜ ህይወት ግንኙነቶች ጋር ይዛመዳል)። ግንኙነቱ ከተዘጋ (ደንበኛው ከሄደ ወይም ጊዜው አልፎበታል), ሂደቱ በማዳመጥ ሶኬቶች ላይ አዲስ ደንበኞችን ለመገናኘት ይመለሳል.
ልብ ሊባል የሚገባው አስፈላጊ ነጥብ እያንዳንዱ ንቁ የኤችቲቲፒ ግንኙነት (እያንዳንዱ ባች) የተለየ ሂደት ወይም ክር (አያት) ይፈልጋል። ይህ አርክቴክቸር ቀላል እና በቀላሉ ሊሰፋ የሚችል ነው። የሶስተኛ ወገን ሞጁሎች(አዲስ "ደንቦች"). ነገር ግን፣ በጣም ትልቅ አለመመጣጠን አለ፡ ቀላል ክብደት ያለው የኤችቲቲፒ ግንኙነት፣ በፋይል ገላጭ እና በትንሽ ማህደረ ትውስታ የተወከለው ከ ጋር ይዛመዳል። የተለየ ሂደትወይም ክር ፣ በስርዓተ ክወናው ውስጥ በትክክል ከባድ ነገር። ይህ ለፕሮግራም ምቹ ነው, ግን በጣም አባካኝ ነው.

NGINX እንደ እውነተኛ አያት ጌታ

አንድ አያት ጌታ በአንድ ጊዜ ከብዙ ተቃዋሚዎች ጋር በብዙ የቼዝ ሜዳዎች ላይ ሲጫወት በአንድ ጊዜ ስለሚደረጉ የጨዋታ ክፍለ ጊዜዎች ሰምተህ ይሆናል?


ኪሪል ጆርጂየቭ በቡልጋሪያ በተካሄደ ውድድር 360 ጨዋታዎችን በተመሳሳይ መልኩ ተጫውቷል። የመጨረሻ ውጤቱም 284 ድሎች 70 አቻ ወጥተው 6 አሸንፈዋል።

በተመሳሳይ መልኩ የ NGINX ሰራተኛ ሂደት ቼዝ ይጫወታል. እያንዳንዱ ሠራተኛ ሂደት (አስታውሱ - ብዙውን ጊዜ በአንድ የኮምፒዩተር ኮር አንድ ብቻ) በመቶዎች የሚቆጠሩ (በእውነቱ በመቶ ሺዎች የሚቆጠሩ) ጨዋታዎችን በአንድ ጊዜ መጫወት የሚችል ታላቅ ጌታ ነው።

  1. የሰራተኛው ሂደት በማዳመጥ ሶኬቶች እና የግንኙነት ሶኬቶች ላይ ዝግጅቶችን ያዳምጣል.
  2. ክስተቶች በሶኬቶች ላይ ይከሰታሉ እና ሂደቱም ያስኬዳቸዋል-
    • በማዳመጥ ሶኬት ላይ ያለ ክስተት ማለት ነው። አዲስ ደንበኛጨዋታውን ለመጀመር. የሰራተኛው ሂደት አዲስ የግንኙነት ሶኬት ይፈጥራል.
    • በግንኙነት ሶኬት ላይ ያለ ክስተት ደንበኛው መንቀሳቀሱን ያሳያል። የስራ ሂደቱ ወዲያውኑ ለእሱ ምላሽ ይሰጣል.
የስራ ፍሰት ሂደት የአውታረ መረብ ትራፊክ, ፈጽሞ አያግድም, ከተቃዋሚው (ደንበኛው) የሚቀጥለውን እርምጃ በመጠባበቅ ላይ. ሂደቱ ከተጓዘ በኋላ ወዲያውኑ ተጫዋቾቹ ለመንቀሳቀስ እየጠበቁ ወደሚገኙባቸው ሌሎች ቦርዶች ይንቀሳቀሳሉ ወይም በበሩ ላይ አዳዲሶችን ያገኛሉ።

ለምንድነው ይህ ከገዳይ ባለብዙ-ክር አርክቴክቸር የበለጠ ፈጣን የሆነው?

እያንዳንዱ አዲስ ግንኙነት ይፈጥራል የፋይል ገላጭእና በስራ ሂደት ውስጥ አነስተኛ መጠን ያለው ማህደረ ትውስታን ያጠፋል. ይህ ከአናት በላይ ያለው ግንኙነት በጣም ዝቅተኛ ነው። የ NGINX ሂደቶች ከተወሰኑ ፕሮሰሰር ኮሮች ጋር እንደተሳሰሩ ሊቆዩ ይችላሉ። የአውድ መቀየሪያዎች የሚከሰቱት በጣም አልፎ አልፎ ነው እና በአብዛኛው የሚቀረው ስራ በማይኖርበት ጊዜ ነው።

የማገጃው አቀራረብ, በእያንዳንዱ ግንኙነት ከተለየ ሂደት ጋር, በአንጻራዊነት ትልቅ መጠን ያስፈልገዋል ተጨማሪ መገልገያዎች, እና አውድ ከአንድ ሂደት ወደ ሌላ መቀየር ብዙ ጊዜ ይከሰታል.

በርዕሱ ላይ ተጨማሪ መረጃ በ NGINX ሥነ ሕንፃ ላይ ባለው ጽሑፍ ውስጥ ከ Andrey Alekseev, የልማት ምክትል ፕሬዚዳንት እና የ NGINX, Inc. መስራች.

በቂ የስርዓት ውቅር ሲኖር፣ NGINX በአንድ ሰራተኛ ሂደት በመቶ ሺዎች የሚቆጠሩ ትይዩ የኤችቲቲፒ ግንኙነቶችን በጥሩ ሁኔታ ይመዝን እና የትራፊክ ፍንዳታዎችን (የአዳዲስ ተጫዋቾችን ብዛት) በልበ ሙሉነት ይቀበላል።

ማዋቀር እና ሊተገበር የሚችል ኮድ በማዘመን ላይ

የ NGINX ዝቅተኛ ሰራተኛ አርክቴክቸር አወቃቀሩን እና ሌላው ቀርቶ የራሱን የሚተገበር ኮድ በበረራ ላይ በብቃት እንዲያዘምን ያስችለዋል።


የ NGINX ውቅረትን ማዘመን በጣም ቀላል፣ ቀላል ክብደት ያለው እና አስተማማኝ አሰራር ነው። በቀላሉ የSIGHUP ምልክት ወደ ዋናው ሂደት መላክን ያካትታል።

የሰራተኛው ሂደት SIGUP ሲቀበል ብዙ ስራዎችን ያከናውናል፡-

  1. አወቃቀሩን እንደገና ይጭናል እና ያፈልቃል አዲስ ስብስብየሥራ ሂደቶች. እነዚህ አዲስ የሰራተኞች ሂደቶች ወዲያውኑ ግንኙነቶችን መቀበል እና ትራፊክ ማቀናበር ይጀምራሉ (አዲሶቹን መቼቶች በመጠቀም)።
  2. የቆዩ የስራ ፍሰቶችን በጸጋ እንዲያልቅ ምልክት ያደርጋል። አዳዲስ ግንኙነቶችን መቀበል ያቆማሉ. አሁን ያሉት የኤችቲቲፒ ጥያቄዎች እንደተጠናቀቁ፣ ግንኙነቶቹ ይዘጋሉ (ምንም የሚቆዩ በሕይወት ያሉ ግንኙነቶች የሉም)። ሁሉም ግንኙነቶች ከተዘጉ በኋላ የሰራተኛው ሂደት ያበቃል.
ይህ አሰራር በማቀነባበሪያው እና በማህደረ ትውስታው ላይ ትንሽ ጭነት ሊፈጥር ይችላል ፣ ግን በአጠቃላይ ይህ ንቁ ግንኙነቶችን ከማቀናበር ዋጋ ጋር ሲነፃፀር የማይታወቅ ነው። አወቃቀሩን በሰከንድ ብዙ ጊዜ እንደገና መጫን ይችላሉ (እና ይህን የሚያደርጉ በጣም ጥቂት የ NGINX ተጠቃሚዎች አሉ)። አልፎ አልፎ፣ በጣም ብዙ ትውልዶች የ NGINX ሰራተኛ ሂደቶች ግንኙነቶችን ለመዝጋት ሲጠብቁ ችግሮች ሊፈጠሩ ይችላሉ፣ ነገር ግን እነዚህ በፍጥነት መፍትሄ ያገኛሉ።

አዘምን ሊተገበር የሚችል ኮድ NGINX መንፈስ ቅዱስ ነው። ከፍተኛ ተገኝነትአገልግሎቶች. ግንኙነቶች ሳይጠፉ፣ የሀብት መቋረጡ ወይም በደንበኞች አገልግሎት ውስጥ ምንም አይነት መቆራረጥ ሳይኖር አገልጋዩን በጉዞ ላይ ማዘመን ይችላሉ።

Nginx ታዋቂ እና ኃይለኛ የድር አገልጋይ እና የተገላቢጦሽ ፕሮክሲ ነው።

Nginx ብዙ ጥቅሞች አሉት ፣ ግን ቅንብሮቹ በጣም የተወሳሰቡ ናቸው እና ለጀማሪዎች ሁል ጊዜ ግልፅ አይደሉም። ይህ መመሪያየ Nginx መሰረታዊ መለኪያዎችን፣ አገባብ እና ውቅረት ፋይሎችን ለመረዳት ይረዳዎታል።

ማስታወሻይህ አጋዥ ስልጠና በኡቡንቱ 12.04 ላይ ተከናውኗል።

Nginx ማውጫ ተዋረድ

Nginx የውቅር ፋይሎችን በ /etc/nginx ማውጫ ውስጥ ያከማቻል።

ይህ ማውጫ ብዙ ተጨማሪ ማውጫዎችን እና ሞጁል ውቅር ፋይሎችን ይዟል።

cd /etc/nginx
ls -ኤፍ

conf.d/ koi-win naxsi.rules scgi_params uwsgi_params
fastcgi_params mime.types nginx.conf sites-available/win-utf
koi-utf naxsi_core.rules proxy_params ሳይቶች የነቁ/

የApache ተጠቃሚዎች በጣቢያዎች የሚገኙ እና በጣቢያዎች የነቁ ማውጫዎችን አስቀድመው ያውቃሉ። እነዚህ ማውጫዎች የጣቢያ ውቅሮችን ይገልጻሉ። ፋይሎች ብዙውን ጊዜ የተፈጠሩ እና በጣቢያዎች ውስጥ ይከማቻሉ - ይገኛሉ; በጣቢያዎች የነቁ የነቁ ጣቢያዎች ውቅሮችን ብቻ ያከማቻል። ይህንን ለማድረግ መፍጠር ያስፈልግዎታል ተምሳሌታዊ አገናኝከጣቢያዎች - ለጣቢያዎች የነቁ።

የ conf.d ማውጫ ውቅሮችን ለማከማቸትም ሊያገለግል ይችላል። Nginx ሲጀምር እያንዳንዱ የ.conf ቅጥያ ያለው ፋይል ይነበባል። የእንደዚህ አይነት ፋይሎች አገባብ ስህተቶችን መያዝ የለበትም.

ሁሉም ማለት ይቻላል የተቀሩት ፋይሎች በ /etc/nginx ውስጥ ተከማችተዋል ፣ ይህም ለተወሰኑ ሂደቶች ወይም ተጨማሪ አካላት የውቅር መረጃን ይይዛል።

ዋናው የ Nginx ውቅር ፋይል nginx.conf ነው።

nginx.conf ፋይል

የ nginx.conf ፋይል ተዛማጅ ውቅር ፋይሎችን ያነባል እና ያዋህዳቸዋል። ነጠላ ፋይልአገልጋዩን ሲጀምሩ ውቅሮች.

ፋይሉን ይክፈቱ፡-

sudo nano /etc/nginx/nginx.conf

ተጠቃሚ www-data;
የሰራተኛ_ሂደቶች 4;
pid /var/run/nginx.pid;
ክስተቶች (
የሰራተኛ_ግንኙነቶች 768;
# ብዙ_ተቀበል ;
}
http(
. . .

የመጀመሪያዎቹ መስመሮች ስለ Nginx አጠቃላይ መረጃ ይሰጣሉ. የመስመር ተጠቃሚው www-data አገልጋዩ የጀመረበትን ተጠቃሚ ይገልጻል።

የፒዲ መመሪያው የት እንደሚከማች ይገልጻል የሂደት PIDsውስጣዊ አጠቃቀም. የሰራተኛ_ሂደት መስመር Nginx በአንድ ጊዜ ሊደግፈው የሚችለውን የሂደቶች ብዛት ይወስናል።

እንዲሁም በዚህ የፋይሉ ክፍል ውስጥ ምዝግብ ማስታወሻዎችን መግለጽ ይችላሉ (ለምሳሌ የስህተት ምዝግብ ማስታወሻው የስህተት_ሎግ መመሪያን በመጠቀም ይገለጻል)።

ከኋላ አጠቃላይ መረጃስለ አገልጋዩ የክስተቶችን ክፍል ይከተላል። የ Nginx ግንኙነቶችን አያያዝ ይቆጣጠራል. የ http ብሎክ ተከትሎ ነው. በድር አገልጋይ አወቃቀሮች ከመቀጠላችን በፊት የ Nginx ውቅር ፋይል እንዴት እንደተቀረፀ መረዳት አለብን።

Nginx ውቅር ፋይል መዋቅር

የ Nginx ውቅር ፋይል ወደ ብሎኮች ተከፍሏል።

የመጀመሪያው እገዳ ክስተቶች ነው, በመቀጠል http እና ዋናው የውቅረት ተዋረድ ይጀምራል.

የ http block ውቅር ዝርዝሮች ከተቀመጡበት ብሎክ ንብረቶችን የሚወርሱ የተዘጉ ብሎኮችን በመጠቀም ተደራራቢ ናቸው። የ http ብሎክ አብዛኞቹን አጠቃላይ የ Nginx ውቅሮችን ያከማቻል፣ እነሱም በአገልጋይ ብሎኮች የተከፋፈሉ፣ እነሱም በተራው ወደ መገኛ ብሎኮች የተከፋፈሉ።

ወቅት Nginx ቅንብሮችማስታወስ ጠቃሚ ነው ቀጣዩ ደንብ: የውቅር ደረጃ ከፍ ባለ መጠን ብዙ ብሎኮች ይህንን ውቅር ይወርሳሉ። ዝቅተኛ የማዋቀሪያ ደረጃ, የበለጠ "ግለሰብ" ነው. ያም ማለት የ X ፓራሜትር በእያንዳንዱ የአገልጋይ እገዳ ውስጥ ጥቅም ላይ መዋል ካለበት, እንዲህ ዓይነቱ መለኪያ በ http ብሎክ ውስጥ መቀመጥ አለበት.

ፋይሉን በቅርበት ከተመለከቱት, በአጠቃላይ የፕሮግራሙን ባህሪ የሚወስኑ ብዙ አማራጮችን እንደያዘ ያስተውላሉ.

ለምሳሌ የፋይል መጭመቅን ለማዋቀር የሚከተሉትን መለኪያዎች ማዘጋጀት ያስፈልግዎታል:

gzip በርቷል;
gzip_"msie6" ማሰናከል;

ይህ ለደንበኛው የተላከውን ውሂብ ለመጭመቅ የ gzip ድጋፍን ያስችላል እና gzipን ያሰናክላል ኢንተርኔት ኤክስፕሎረር 6 (ይህ አሳሽ የውሂብ መጭመቅን ስለማይደግፍ).

ማንኛውም መለኪያ ሊኖረው የሚገባ ከሆነ የተለየ ትርጉምበበርካታ የአገልጋይ ብሎኮች ውስጥ ፣ ከዚያ እንደዚህ ያለ ግቤት ሊዘጋጅ ይችላል። ከፍተኛ ደረጃእና ከዚያ በአገልጋዩ ውስጥ እራሳቸውን ያግዱ። በዚህ ምክንያት Nginx ዝቅተኛውን ደረጃ መለኪያ ያከናውናል.

ይህ የውቅረት ንብርብር ብዙ ተመሳሳይ ፋይሎችን የማስተዳደር አስፈላጊነትን ያስወግዳል። እንዲሁም, በ ላይ መለኪያዎችን መግለፅ ከረሱ ዝቅተኛው ደረጃ, Nginx በቀላሉ ነባሪ አማራጮችን ተግባራዊ ያደርጋል.

በ nginx.conf ፋይል ውስጥ ያለው የ http ብሎክ በዚህ ያበቃል።

ማካተት /etc/nginx/conf.d/*.conf;
ማካተት /etc/nginx/sites-የነቃ/*;

ይህ ማለት ለተወሰኑ ድረ-ገጾች እና ዩአርኤሎች መቼቶችን የሚገልጹ የአገልጋዩ እና የአካባቢ ብሎኮች ከዚህ ፋይል ውጭ ይከማቻሉ።

ይህ አዲስ ጣቢያዎችን ለማገልገል አዲስ ፋይሎች የሚፈጠሩበት ሞዱል ውቅር አርክቴክቸር እንዲኖር ያስችላል። እንዲሁም ተመሳሳይ ፋይሎችን ለመቧደን ያስችልዎታል.

የ nginx.conf ፋይልን ዝጋ። አሁን የግለሰብ ጣቢያዎችን መቼቶች ማጥናት ያስፈልግዎታል.

Nginx ምናባዊ ብሎኮች

በNginx ውስጥ ያሉ የአገልጋይ ብሎኮች ከምናባዊው ጋር ተመሳሳይ ናቸው። Apache አስተናጋጆች(ለመመቻቸት ግን ተጠርተዋል ምናባዊ አስተናጋጆች). በመሰረቱ የአገልጋይ ብሎኮች ናቸው። ዝርዝር መግለጫዎችበተመሳሳዩ አገልጋይ ላይ የተስተናገዱ ድረ-ገጾችን ይለያሉ.

በጣቢያዎች ላይ ባለው ማውጫ ውስጥ ከአገልጋዩ ጋር የሚመጣውን ነባሪ የአገልጋይ እገዳ ፋይል ማግኘት ይችላሉ። ይህ ፋይል ጣቢያውን ለመጠበቅ ሁሉንም አስፈላጊ መረጃዎች ይዟል.

ሲዲ ጣቢያዎች - ይገኛሉ
sudo nano ነባሪ

ስርወ / usr/share/nginx/www;
መረጃ ጠቋሚ.html index.htm;
አገልጋይ_ስም localhost;
አካባቢ/(

}
ቦታ / ሰነድ / (

ተለዋጭ ስም /usr/share/doc/;
autoindex በርቷል;
ፍቀድ 127.0.0.1;
ሁሉንም መካድ;

ነባሪው ፋይል በጣም ጥሩ አስተያየት ተሰጥቷል, ነገር ግን ከላይ ባለው ምሳሌ ውስጥ አስተያየቶቹ ለቀላል እና ለአጠቃቀም ምቹ ናቸው.

የአገልጋዩ እገዳ በተጠማዘዘ ቅንፍ መካከል የተቀመጡትን ሁሉንም ቅንብሮች ያካትታል፡

አገልጋይ (
. . .
}

ይህ እገዳ በ nginx.conf ፋይል ውስጥ ከ http ብሎክ መጨረሻ አጠገብ የተካተተ መመሪያን በመጠቀም ተቀምጧል።

የስር መመሪያው የጣቢያው ይዘት የሚከማችበትን ማውጫ ይገልጻል። Nginx በተጠቃሚው የተጠየቁ ፋይሎችን ለማግኘት በዚህ ማውጫ ውስጥ ይመለከታል። በነባሪ ይህ /usr/share/nginx/www ነው።

እባክዎን ያስተውሉ፡ ሁሉም መስመሮች በሰሚኮሎን ያበቃል። Nginx አንዱን መመሪያ ከሌላው የሚለየው በዚህ መንገድ ነው። ሴሚኮሎን ከሌለ Nginx ሁለቱን መመሪያዎች (ወይም በርካታ መመሪያዎችን) እንደ አንድ መመሪያ ከተጨማሪ ክርክሮች ጋር ያነባል።

የመረጃ ጠቋሚው መመሪያ እንደ ኢንዴክስ ጥቅም ላይ የሚውሉትን ፋይሎች ይገልጻል. የድር አገልጋዩ ፋይሎቹን በተዘረዘሩት ቅደም ተከተል ይፈትሻል። ምንም ገጽ ካልተጠየቀ፣ የአገልጋዩ እገዳው የኢንዴክስ.html ፋይሉን አግኝቶ ይመልሳል። ያንን ፋይል ማግኘት ካልቻለ index.htm ለማስኬድ ይሞክራል።

የአገልጋይ_ስም መመሪያ

የአገልጋይ_ስም መመሪያ በዚህ አገልጋይ ብሎክ የሚቀርቡ የጎራ ስሞች ዝርዝር ይዟል። የጎራዎች ብዛት ያልተገደበ ነው; በዝርዝሩ ውስጥ ያሉ ጎራዎች በቦታዎች መለያየት አለባቸው።

በጎራ መጀመሪያ ወይም መጨረሻ ላይ ያለ ኮከብ (*) ማስክ ያለበት ስም ይገልፃል። ለምሳሌ፣ *.example.com የሚለው ስም forum.example.com እና www.animals.example.com ከሚሉት ስሞች ጋር ይዛመዳል።

የተጠየቀው ዩአርኤል ከአንድ በላይ የአገልጋይ_ስም መመሪያ ጋር የሚዛመድ ከሆነ መጀመሪያ በትክክል ከሚዛመደው ጋር ምላሽ ይሰጣል።

አድራሻው ግጥሚያ ካላገኘ ብዙውን ይፈልጋል ረጅም ስምበአስሪክ የሚጨርስ ጭምብል. እንደዚህ አይነት ስም ካላገኘ የመጀመሪያውን መደበኛ አገላለጽ ግጥሚያ ይመልሳል.

መደበኛ አገላለጾችን የሚጠቀሙ የአገልጋይ ስሞች በ tilde (~) ይጀምራሉ። እንደ አለመታደል ሆኖ ይህ ርዕስከዚህ ጽሑፍ ወሰን በላይ ነው.

የአካባቢ እገዳዎች

ቦታው/መስመሩ የሚያመለክተው በቅንፍ ውስጥ ያሉት መመሪያዎች ከማንኛቸውም የመገኛ ቦታ ብሎኮች ጋር በማይዛመዱ ሁሉም የተጠየቁ ግብአቶች ላይ ተፈጻሚ ይሆናሉ።

እንደዚህ ያሉ ብሎኮች የዩሪ ዱካ (ለምሳሌ /doc/) ሊይዙ ይችላሉ። በቦታ እና በዩሪ መካከል የተሟላ ግጥሚያ ለመመስረት የ= ምልክቱ ጥቅም ላይ ይውላል። ~ ቁምፊው ከመደበኛ አገላለጾች ጋር ​​ይዛመዳል።

አንድ ታይልድ ለጉዳይ ሚስጥራዊነት ሁነታን ያስችላል፣አንጻሩ ኮከቢት ያለው tilde ለጉዳይ የማይሰማ ሁነታን ያስችላል።

ጥያቄው ከቦታ እገዳው ጋር ሙሉ በሙሉ የሚዛመድ ከሆነ አገልጋዩ ፍለጋውን ያቆማል እና እንደዚህ ያለ እገዳ ይጠቀማል። አገልጋዩ ሙሉ በሙሉ የሚዛመድ የአካባቢ ብሎክ ካላገኘ፣ ዩአርአይን ከአካባቢው መመሪያዎች መለኪያዎች ጋር ያወዳድራል። Nginx የቁምፊ ጥምር ^~ን የሚጠቀም እና ከዩአርአይ ጋር የሚዛመድ ብሎክን ይመርጣል።

የ^~ አማራጭ ጥቅም ላይ ካልዋለ፣ Nginx የቅርብ ግጥሚያውን ይመርጣል እና ከመካከላቸው አንዱን ለማዛመድ መደበኛውን የቃላት ፍለጋ ያካሂዳል። የሚገኙ አብነቶች. እንደዚህ አይነት አገላለጽ ካገኘ ይጠቀማል. እንደዚህ አይነት አገላለጽ ከሌለ አገልጋዩ ከዚህ ቀደም የተገኘውን የ URI ግጥሚያ ይጠቀማል።

እንደ የመጨረሻ ማስታወሻ Nginx ትክክለኛ ግጥሚያዎችን ይመርጣል። እንደዚህ አይነት ግጥሚያዎች ከሌሉ, ይፈልጋል መደበኛ አገላለጽእና ከዚያ በ URI ይፈልጉ። የ URI ፍለጋ ቅድሚያ ለመቀየር የቁምፊ ጥምር ^~ ይጠቀሙ።

try_files መመሪያ

የ try_files መመሪያው በጣም ነው። ጠቃሚ መሣሪያ, በተሰጠው ቅደም ተከተል ፋይሎችን የሚፈትሽ እና የተገኘውን የመጀመሪያ ፋይል ጥያቄውን ለማስኬድ ይጠቀማል.

ይህ እንድትጠቀም ይፈቅድልሃል ተጨማሪ መለኪያዎች Nginx እንዴት ጥያቄዎችን እንደሚያቀርብ ይወስኑ።

ነባሪው የውቅር ፋይል መስመር አለው፡-

try_files $uri $uri/ /index.html;

ይህ ማለት በቦታ ብሎክ የቀረበ ጥያቄ ሲደርሰው Nginx በመጀመሪያ ዩሪውን በፋይል ለማገልገል ይሞክራል (ይህ ባህሪ በ$uri ተለዋዋጭ ይገለጻል)።

አገልጋዩ ለ$uri ተለዋዋጭ ግጥሚያ ካላገኘ ዩሪውን እንደ ማውጫ ለመጠቀም ይሞክራል።

ተከታይ slash በመጠቀም አገልጋዩ የማውጫ መኖሩን ይፈትሻል፣ ለምሳሌ $uri/።

ምንም ፋይል ወይም ማውጫ ካልተገኘ Nginx ነባሪውን ፋይል (በ በዚህ ጉዳይ ላይይህ በአገልጋይ እገዳ ስር ማውጫ ውስጥ index.html ነው)። እያንዳንዱ try_files መመሪያ የመጨረሻውን መለኪያ እንደ ውድቀት ይጠቀማል፣ ስለዚህ ፋይሉ በሲስተሙ ላይ መኖር አለበት።

ምናልባት የድር አገልጋዩ በቀደሙት መመዘኛዎች ውስጥ ተዛማጅ ካላገኘ፣ የስህተት ገጽን ሊመልስ ይችላል። ይህንን ለማድረግ, እኩል ምልክት እና የስህተት ኮድ ይጠቀሙ.

ለምሳሌ፣ ቦታው/ብሎክ የተጠየቀውን ሃብት ማግኘት ካልቻለ፣ ከ index.html ፋይል ይልቅ 404 ስህተት ሊመልስ ይችላል።

try_files $uri $uri/ = 404;

ይህንን ለማድረግ, እኩል ምልክት ማድረግ እና የስህተት ኮዱን እንደ የመጨረሻው መለኪያ (=404) ማዘጋጀት ያስፈልግዎታል.

ተጨማሪ አማራጮች

ቅጽል መመሪያው Nginx ከተሰጠው ማውጫ ውጭ (ለምሳሌ ከስር ውጭ) የመገኛ ቦታ ገፆችን እንዲያቀርብ ይፈቅዳል።

ለምሳሌ፣ ከ/doc/ የተጠየቁ ፋይሎች ከ/usr/share/doc/ ይቀርባሉ።

በመመሪያው ላይ ያለው አውቶኢንዴክስ ለተወሰነ የአካባቢ መመሪያ የNginx ማውጫዎችን ዝርዝር እንዲያነቁ ይፈቅድልዎታል።

የመፍቀድ እና የመከልከል መስመሮች የማውጫዎችን መዳረሻ ይቆጣጠራሉ።

ማጠቃለያ

የ Nginx ድር አገልጋይ በባህሪው የበለፀገ እና በጣም ኃይለኛ ነው፣ ነገር ግን የቃላት አጠቃቀሙ እና አማራጮቹ ግራ የሚያጋቡ ናቸው።

ጋር በመገናኘት የ Nginx ውቅሮችእና ከነሱ ጋር እንዴት እንደሚሰሩ ከተማሩ በኋላ የዚህን ኃይለኛ እና ቀላል ክብደት ያለው መሳሪያ ሁሉንም ጥቅሞች ያገኛሉ.

መለያዎች::

Nginx ከ2004 ጀምሮ በይፋ የሚገኝ የድር አገልጋይ እና የኢሜይል ተኪ ነው። የፕሮጀክቱ ልማት በ 2002 ተጀመረ, በሩሲያ ውስጥ ስሙ እንደ ሞተር-ኤክስ. የእጅ ሥራ መሆን ታዋቂ ፕሮግራመር, Igor Sysoev, Nginx በመጀመሪያ የታሰበው ለ Rambler ኩባንያ ነበር. የዩኒክስ መሰል ቡድን አባል ለሆኑ ስርዓተ ክወናዎች የተነደፈ ነው። ስብሰባው በተሳካ ሁኔታ በOpenBSD, FreeBSD, Linux, Mac OS X, Solaris ላይ ተፈትኗል. በርቷል የማይክሮሶፍት መድረክዊንዶውስ Nginx የሁለትዮሽ ስብሰባ ስሪት 0.7.52 መምጣት ጋር መሥራት ጀመረ።

የማርች 2011 አኃዛዊ መረጃዎች እንደሚያመለክቱት በNginx የሚገለገሉት የጣቢያዎች ብዛት ቀድሞውኑ 22 ሚሊዮን ምልክት አልፏል። ዛሬ Nginx እንደ Rambler, Begun, Yandex, SourceForge.net, WordPress.com, vkontakte.ru እና ሌሎች ባሉ ታዋቂ ፕሮጀክቶች ጥቅም ላይ ይውላል. ከlighttpd ጋር Nginx በሌላ የድር አገልጋይ "በስልጣን" በሚሰራ "በማይመች" የድር መተግበሪያ የሚመነጨውን የማይንቀሳቀስ ይዘት ለማቅረብ ያገለግላል።
ነገር ግን ወደ ዱር ውስጥ ከመግባታችን በፊት ተግባራዊ ባህሪያት Nginx - የድር አገልጋይ በአጠቃላይ እና በተለይ ተኪ አገልጋይ ምን እንደሆነ ማስታወስ ጠቃሚ ነው።

የድር አገልጋይ እና ተኪ አገልጋይ

የድር አገልጋይከድር አሳሾች እና ሌሎች ደንበኞች የኤችቲቲፒ ጥያቄዎችን የሚቀበል እና ለእነሱ የኤችቲቲፒ ምላሽ የሚሰጥ አገልጋይ ነው። የኋለኞቹ በአብዛኛው ይወከላሉ HTML ገጽ, የሚዲያ ዥረት, ምስል, ፋይል, ሌላ ውሂብ. የድር አገልጋይ ሁለቱንም የድር አገልጋይ ተግባራትን እና ሃርድዌርን የሚያከናውን ሶፍትዌርን ያመለክታል። የመረጃ ልውውጥ እና የተጠየቀው መረጃ በ HTTP ፕሮቶኮል በኩል ይከናወናል.

ወደ ዝርዝር ያክሉ ተጨማሪ ተግባራትየድር አገልጋዮች የሚከተሉትን ያጠቃልላሉ፡ የተጠቃሚዎችን ፍቃድ መስጠት እና ማረጋገጥ፣ የሀብታቸውን መዳረሻ መመዝገብ፣ ከደንበኞች ጋር ደህንነቱ የተጠበቀ ግንኙነት እንዲኖር HTTPS ድጋፍ እና ሌሎችም። በዩኒክስ መሰል ኦፕሬቲንግ ሲስተሞች ላይ በብዛት ጥቅም ላይ የዋለው የድር አገልጋይ Apache ነው። Nginx በአሁኑ ጊዜ በደንበኛ ምርጫዎች ዝርዝር ውስጥ ሦስተኛውን ቦታ ይይዛል።

ተኪ አገልጋይደንበኞች እንዲቋቋሙ ያስችላቸዋል የፍለጋ ጥያቄዎችየአውታረ መረብ አገልግሎቶችበተዘዋዋሪ መንገድ. ማለትም የደንበኛ ጥያቄዎችን ወደ ሌሎች አገልጋዮች በማዛወር ላይ ያተኮረ አገልጋይ ነው። ከተኪ አገልጋይ ጋር በመገናኘት እና በሌላ አገልጋይ ላይ የሚገኝን ሃብት በመጠየቅ ደንበኛው ማንነቱን እንዳይገልጽ እና ኮምፒውተሩን ከጥቃት ለመጠበቅ እድሉ አለው። የአውታረ መረብ ጥቃቶች. ተኪ አገልጋዩ የተጠየቀውን መረጃ ከራሱ መሸጎጫ (ካለ) ወይም ከተቀበለ በኋላ ለደንበኛው ያቀርባል የተገለጸ አገልጋይ. ውስጥ በአንዳንድ ሁኔታዎች(ከላይ ያሉትን ግቦች ለማሳካት)፣ የአገልጋዩ ምላሽ፣ ልክ እንደ ደንበኛ ጥያቄ፣ በተኪ አገልጋይ ሊስተካከል ይችላል።

በጣም ቀላሉ ተኪ አገልጋይ የአውታረ መረብ አድራሻ ተርጓሚ ወይም NAT ነው። እ.ኤ.አ. በ 2000 ተኪ NAT ተገንብቷል። የዊንዶውስ ስርጭት. ፕሮክሲ ሰርቨሮች፣ ልክ እንደ ማንኛውም ክስተት፣ የሳንቲሙ ሁለት ገፅታዎች አሏቸው፣ ማለትም፣ ለክፉም ለደጉም ሊውሉ ይችላሉ። ለምሳሌ በእነሱ እርዳታ በመስመር ላይ ለሚያደርጉት ተገቢ ያልሆነ ተግባራቸው ማዕቀብ የሚፈሩ ሰዎች የአይ ፒ አድራሻቸውን ይደብቃሉ...

Nginx ተግባራዊ ክልል፡

  • የአገልጋይ አገልግሎት ማውጫ ፋይሎች፣ የማይለዋወጡ መጠይቆች፣ የመሸጎጫ ገላጭዎችን ማመንጨት ፋይሎችን ይክፈቱ, የፋይል ዝርዝር;
  • የተፋጠነ ፕሮክሲንግ, የመጀመሪያ ደረጃ ጭነት ስርጭት, ስህተት መቻቻል;
  • በተፋጠነ ፕሮክሲንግ እና FastCGI ጊዜ መሸጎጫ ድጋፍ;
  • ለ FastCGI (የተጣደፉ) እና የተሸጎጡ አገልጋዮች ድጋፍ;
  • ሞዱላሪቲ፣ ማጣሪያዎች፣ ከእንደገና ማስጀመር (ባይት-ክልሎች) እና መጭመቂያ (gzip)ን ጨምሮ።
  • የኤችቲቲፒ ማረጋገጫ፣ የተቆራረጡ ምላሾች፣ SSI ማጣሪያ;
  • በFastCGI ወይም በSSI ማጣሪያ ውስጥ ባለው ፕሮክሲ በተሰራ ገጽ ላይ የበርካታ ንዑስ መጠይቆችን ትይዩ ማስፈጸሚያ፤
  • StartTLS እና SSL ድጋፍ;
  • አብሮ የተሰራውን ፐርል የመደገፍ ችሎታ;
  • ቀላል ማረጋገጫ (USER/PASS, LOGIN);
  • የተጠቃሚውን የአገልጋይ አቅጣጫ ማዞር (IMAP/POP3 ፕሮክሲ) በመጠቀም ወደ IMAP/POP3 ጀርባ ውጫዊ አገልጋይማረጋገጫ (ኤችቲቲፒ)።

ይህንን የቃላት አጠቃቀም ለማያውቁ ሰዎች የ Nginx ተግባራዊነት መግለጫ በጣም ግልጽ ያልሆነ ሊመስል ይችላል። ወደ መንገዶች ሲመጣ ግን የተወሰነ አጠቃቀምይህ የድር አገልጋይ - ቀስ በቀስ መበታተን ይጀምራል.

አርክቴክቸር እና ውቅር

በ Nginx ውስጥ ያሉ የሰራተኛ ሂደቶች በአንድ ጊዜ ብዙ ግንኙነቶችን ያገለግላሉ ፣ ይህም የስርዓተ ክወና ጥሪዎችን ያቀርባል ( የአሰራር ሂደት) epoll (Linux), ይምረጡ እና kqueue (FreeBSD). ከደንበኛው የተቀበለው መረጃ በስቴት ማሽን በመጠቀም ይተነተናል. የተተነተነው ጥያቄ በአወቃቀሩ በተገለጹ የሞጁሎች ሰንሰለት ነው የሚሰራው። ለደንበኛው የሚሰጠው ምላሽ በመጠባበቂያዎች ውስጥ ይፈጠራል, ይህም የፋይል ክፍልን ሊያመለክት ወይም መረጃን በማህደረ ትውስታ ውስጥ ሊያከማች ይችላል. ወደ ደንበኛው የውሂብ ማስተላለፍ ቅደም ተከተል የሚወሰነው ቋጥኞች በተሰበሰቡባቸው ሰንሰለቶች ነው.

በመዋቅር የ Nginx HTTP አገልጋይ ወደ ቨርቹዋል ሰርቨሮች የተከፋፈለ ሲሆን ይህ ደግሞ በቦታዎች የተከፋፈለ ነው። ምናባዊ አገልጋይወይም መመሪያ፣ ግንኙነቶችን ለመቀበል ወደቦች እና አድራሻዎች መግለጽ ይችላሉ። ለአካባቢ፣ ትክክለኛ ዩአርአይ፣ የዩአርአይ አካል ወይም መደበኛ መግለጫ መግለጽ ይችላሉ። ተግባራዊ አስተዳደርማህደረ ትውስታው ተጣምሯል, ይህም አስቀድሞ የተመረጡ የማህደረ ትውስታ እገዳዎች ቅደም ተከተል ነው. መጀመሪያ ላይ ለመዋኛ ገንዳ የተመደበው አንድ እገዳ ከ 1 እስከ 16 ኪሎባይት ርዝመት አለው. በቦታዎች የተከፋፈለ - የተያዙ እና ያልተያዙ ናቸው. የኋለኛው ሲሞላ, አዲስ ነገር መመደብ አዲስ እገዳ በመፍጠር ይረጋገጣል.

የደንበኞችን ጂኦግራፊያዊ ምደባ በአይፒ አድራሻቸው በ Nginx ውስጥ ልዩ ሞጁል በመጠቀም ይከናወናል ። የራዲክስ ዛፍ ስርዓት በትንሹ የማስታወስ ችሎታን በመያዝ ከአይፒ አድራሻዎች ጋር በፍጥነት እንዲሰሩ ያስችልዎታል።

የ Nginx ጥቅሞች

Nginx በጣም ፈጣን እንደሆነ ይቆጠራል HTTP አገልጋይ. ከ Apache ይልቅ ወይም ከእሱ ጋር Nginx የጥያቄ ሂደትን ለማፋጠን እና በአገልጋዩ ላይ ያለውን ጭነት ለመቀነስ ይጠቅማል። እውነታው ይህ ነው። ትልቅ እድሎችበአፓቼ ሞጁል አርክቴክቸር ውስጥ ያለው፣ በአብዛኛዎቹ ተጠቃሚዎች አያስፈልግም። ለዚህ ያልተጠየቀ ተግባር መክፈል ትልቅ ዋጋ ያስከፍላል። የስርዓት ሀብቶች. ተራ ጣቢያዎች ፣ እንደ አንድ ደንብ ፣ ከስክሪፕቶች ይልቅ በስታቲክ ፋይሎች (ምስሎች ፣ የቅጥ ፋይሎች ፣ ጃቫ ስክሪፕት) ግልፅ “የበላይነት” ተለይተው ይታወቃሉ። ስራው በጣም ቀላል ስለሆነ እነዚህን ፋይሎች ወደ ምንጭ ጎብኝ ለማስተላለፍ ምንም ልዩ ተግባር አያስፈልግም። ይህ ማለት እንደዚህ ያሉ ጥያቄዎችን ለማስኬድ የድር አገልጋይ ቀላል እና ቀላል ክብደት ያለው መሆን አለበት፣ ልክ እንደ Nginx።

Nginx ን ለመጠቀም መንገዶች

በተለየ ወደብ/አይ.ፒ.ሀብቱ ለማውረድ በምስሎች ወይም በፋይሎች የተሞላ ከሆነ Nginx በተለየ ወደብ ወይም አይፒ ላይ ሊዋቀር እና የማይለዋወጥ ይዘትን በእሱ በኩል ማሰራጨት ይችላል። ይህንን ለማድረግ ግን በጣቢያው ላይ አገናኞችን በመቀየር ትንሽ ማጠፍ ያስፈልግዎታል። በ ከፍተኛ መጠንለስታቲክ ፋይሎች መጠይቆችን መፍጠር ምክንያታዊ ነው። የተለየ አገልጋይእና Nginx ን በእሱ ላይ ጫን።

የተፋጠነ ፕሮክሲንግ. በዚህ አማራጭ ሁሉም የጎብኚዎች ጥያቄዎች መጀመሪያ ወደ Nginx ይሄዳሉ። የማይንቀሳቀሱ ፋይሎች ጥያቄዎች (ለምሳሌ ስዕሎች፣ ቀላል HTMLጃቫ ስክሪፕት ወይም ሲኤስኤስ ፋይል) Nginx ራሱን ችሎ ያስኬደዋል። አንድ ተጠቃሚ የተወሰነ ስክሪፕት ከደረሰ ጥያቄውን ወደ Apache ክፍል ያዞራል። በጣቢያው ኮድ ምንም ለውጦችን ማድረግ አያስፈልግም.

ከአገልጋዩ ወደ ጎብኚው ያለው ሰርጥ እና በተቃራኒው ቀርፋፋ ከሆነ, ከዚያ Nginx መተግበሪያመስጠት ይችላል። ተጨማሪ ውጤት. Nginx ለሂደቱ ከጎብኝው የተቀበለውን ጥያቄ ወደ Apache ያስተላልፋል። ጥያቄውን ካስተናገደ በኋላ Apache ገጹን ወደ Nginx ያስተላልፋል እና ግንኙነቱን በስኬት ስሜት ይዘጋል። Nginx አሁን ለተጠቃሚው እስከተፈለገው ጊዜ ድረስ አንድ ገጽ መላክ ይችላል በተግባር የስርዓት ሀብቶችን ሳይጠቀም። Apache ሥራበእሱ ምትክ ያለ አግባብ የታጀበ ነበር። ከፍተኛ ጭነትከሞላ ጎደል ስራ ፈት ሲሰራ ለማስታወስ። በነገራችን ላይ ይህ የ Nginx የአጠቃቀም ጉዳይ ሌላ ስም አለው፡- "ወደ Apache ፊት ለፊት".

Nginx እና FastCGI።የጣቢያው ስክሪፕቶች የተፃፉበት ቋንቋ ተርጓሚ የ FastCGI ቴክኖሎጂን የሚደግፍ ከሆነ Apache ጨርሶ ላያስፈልግ ይችላል። እንደነዚህ ያሉ ቋንቋዎች ለምሳሌ ፒኤችፒ, ፐርል እና ሌሎች በርካታ ያካትታሉ. ሆኖም፣ በዚህ አጋጣሚ የስክሪፕት ኮዶችን ማስተካከል ሊኖርብዎ ይችላል።

በይነመረብ ላይ Nginx ን እንዴት መጫን እና ማዋቀር እንደሚቻል ብዙ ዝርዝር ቁሳቁሶች አሉ። ስለ Nginx በገንቢው Igor Sysoev ድር ጣቢያ ላይ የበለጠ ማወቅ ይችላሉ።