ÒdinatèPwogram

Nginx: Enstalasyon ak enstalasyon

Ki sa ki se Apache, nginx? Objektif, karakteristik, opsyon personnalisation - sa yo, se bagay sa yo ki chak pwomotè entènèt ta dwe abitye li teste devlopman yo.

Sou nginx di yon mo

Zouti sa a gen yon sèl prensipal ak plizyè workflows. Kontra yo premye ak lekti ak verifikasyon konfigirasyon. Epitou anba kontwòl li yo se jesyon workflow. Pwoblèm lan nan tan lontan an - okipe demann fèk ap rantre. itilize nginx Modèl la ki baze sou evènman yo. Machaswiv yo tou yo itilize, tou depann de sistèm nan fonksyone yo nan lòd reyalize demann alokasyon efikas dirèkteman ant pwosesis yo travayè. Se nimewo yo toujou endike nan dosye a konfigirasyon. ka valè a dwe swa fiks oswa mete otomatikman, gide pa ki kantite am processeur ki ka okipe. Nan konfigirasyon nginx nan sistèm nan ak modil yo se te pote soti lè l sèvi avèk dosye a konfigirasyon. Se poutèt sa, si ou bezwen chanje yon bagay, ou bezwen gade pou non li. Anjeneral li se nan direktiv / eksetera / nginx nan (men wout la ka varye ak lòt sistèm) e li gen yon .conf ekstansyon.

Start, rekòmanse, ak boutèy

Pou fè sa, ou dwe fè kouri yo ègzèkutabl. Konfigirasyon nginx-sèvè se sèlman posib lè li se te kòmanse. Jesyon se te pote soti gras a rele ègzèkutabl a ak paramèt nan -s. Pou fè sa, sèvi ak bagay sa yo:

nginx -s siyal

Nan ka sa a, ou ka ranplase kòmandman sa yo (dwe vini soti nan itilizatè a ki te lanse zouti nan):

  1. Sispann. Yo itilize li pou are vit.
  2. Recharger. Ekip la bezwen Reload dosye a konfigirasyon. Reyalite a se ke nenpòt ki chanjman pa pral pran vigè jiskaske dosye a travay. Ak yo nan lòd yo pran efè, se yon rdemare se li nesesè. Le pli vit ke ou jwenn siyal sa a, pwosesis la prensipal kòmanse verifye Correct nan eleman nan Massachusetts Institute of Technology nan dosye a konfigirasyon epi eseye pou aplike pou konseye pedagojik la disponib la. Nan ka ta gen echèk, li pral woule tounen chanjman ak ap travay avèk paramèt yo fin vye granmoun. Si tout bagay se siksè, li pral lanse nouvo workflows, ak fin vye granmoun lan yo pral voye nan fen a demann.
  3. Kite. Yo itilize pou fini lis nan travay la. Yo itilize li si ou vle rete tann jiskaske demann aktyèl yo fini konsève.
  4. Reouvri. dosye log Fèmen epi yo louvri.

Lè l sèvi avèk sèvis piblik

Mete pwosesis kapab tou gen pou fèt lè l sèvi avèk UNIX vle di (ap sèvis piblik touye dwe diskite kòm yon egzanp). Yo toujou sèvi ak yon mekanis yo voye siyal la dirèkteman nan done yo pwosesis. Yo lye pa vle di nan ID. Sa a se done ki estoke nan dosye nginx.pid. Se pou nou asime ke nou enterese nan pwosesis la №134. Lè sa a, pou fini nan lis nan bezwen nan voye nou enfòmasyon sa a:

touye -s KITE 1628

Se pou nou asime ke nou vle wè yon lis tout dosye louvri. Nou ap fè pou sèvi ak ps nan sèvis piblik. Ekip la tou, y ap gade jan sa a:

ps -ax | grèp nginx

Sa se, jan ou ka wè, lè l sèvi avèk enstriman mizik plis endike ke li ale aplikasyon li yo. Epi, koulye a kite a konsantre sou kòman angaje nginx-konfigirasyon.

Estrikti a nan dosye a konfigirasyon

Enstale ak konfigirasyon nginx gen ladan travay avèk modil yo. Yo configuré lè l sèvi avèk direktiv yo ki fè yo espesifye nan dosye a konfigirasyon. Yo ka senp oswa blòk. Kalite nan premye konsiste de direktiv yo ak paramèt, ki fè yo separe pa espas, epi li se fen yo endike pa yon pwenvigil - (;). Blòk la gen yon estrikti menm jan an. Men, olye pou yo sa a fèmen direktiv sitiye adisyonèl seri enstriksyon ke yo mete yo nan parantèz yo Curly ({} enstriksyon). Si yo ka poste non yo ak lòt paramèt nan pwosesis la, yo rele yo konstriksyon sa yo gen kontèks la. Kòm yon egzanp, http, kote ak sèvè.

distribisyon an nan kontni estatik

Sa a se youn nan defi yo fè fas a configuration la, te nginx pi enpòtan. Anba distribisyon an statistik de kontni an se vle di ke imaj, ak HTML-paj (pa dinamik). Sipoze ke nou bezwen yon travay sèl sou mete kanpe nginx nan gwoup nix. Èske li difisil a fè sa? Non, kite pou yo gade nan yon egzanp. Anvan anbakman sou li, li nesesè sou detay kondisyon sa yo nan pwoblèm nan. Se konsa, tou depann de demann la, dosye yo ap soti nan divès kalite repèrtwar lokal yo. Kidonk, nan / done / www a nou gen HTML-dokiman yo. Ak nan anyè / done / imaj yo ki gen imaj. Optimal anviwònman nginx nan ka sa a mande pou koreksyon dosye a konfigirasyon, ki ou dwe configured inite nan sèvè nan http. Pou sipòte de la yo pral itilize kòm kote.

Aplikasyon: sèvè

Se konsa, premye nou bezwen yo kreye repèrtwar epi mete tèt yo nan dosye yo yo bezwen yo elaji (nan html ou bezwen ajoute kontni). Lè sa a, louvri dosye a konfigirasyon. Nan sa a, sèvè a default deja gen plizyè blòk, ki pou pati ki pi yo kòmante deyò. Pou yo rive nan rezilta pi gwo, pwosesis sa a bezwen yo dwe fè ki gen rapò ak tout eleman pa defo. Lè sa a, ajoute yon inite sèvè nouvo lè l sèvi avèk kòd sa a:

http {

sèvè {

}

}

Dosye a konfigirasyon ka travay avèk plizyè blòk sa yo. Men, yo dwe distenge pa non yo ak pò a ki se done resevwa yo.

Aplikasyon: kote

Detèmine nan sèvè a:

kote / {

rasin / done / www;

}

Prezans nan siyen nan "/" nesesè yo konpare done yo jwenn ak wè si gen se tankou yon adrès soti nan demann lan trete isit la. Si pa gen okenn pwoblèm, Lè sa a, presize chemen / done / www a nan dosye a vle ki sitiye nan sistèm nan lokal yo. Si gen yon matche ak ak yon blòk kèk, lè sa a chwazi youn nan ak prefiks la pi long nan. Nan egzanp sa a, longè a ki egal a yon sèl, sa vle di, pou yo sèvi ak yo pral sèlman nan evènman an ke pa gen okenn "konpetisyon". Koulye a, kite li pral mete ajou:

kote / images / {

rasin / done;

}

Ki jan yo ka idantifye, nou ap chèche pou yon imaj. Koulye a, kite a konbine tout devlopman ki te deja, ak configuration la, te nan moman sa a se jan sa a:

sèvè {

kote / {

rasin / done / www;

}

kote / images / {

rasin / done;

}

}

Sa a se yon vèsyon k ap travay nan ka sa a, estanda №80 nan pò. Sa a sèvè san okenn pwoblèm kapab disponib sou òdinatè w lan, si ou ale nan adrès la: http: // localhost /. Ki jan sa a tout travay?

Prensip la nan operasyon nan egzanp lan

Se konsa, lè yo vin nan queries ki kòmanse ak yon / imaj, sèvè a nan dosye yo anyè ki koresponn yo pral voye nan itilizatè a. Nan absans li yo pral ba enfòmasyon ki endike erè a 404. Si te pote soti nginx konfigirasyon sou òdinatè a lokal yo, Lè sa a, http nan demann: //localhost/images/example.png nou pral jwenn yon dosye ki gen kote /data/images/example.png. Lè ou presize y ap fè yon "/" rechèch senbòl dwe fèt nan anyè / done / www la. Men, nou te sèlman chanje configuration la, te. Li kòmanse nan travay, li dwe rekòmanse. Pou fè sa, sèvi ak nginx nan -s Reload. Nan ka a kote operasyon an nòmal se pa posib, nan access.log a ak dosye error.log sitiye nan direktiv / Uzr / lokal / nginx / mòso bwa yo, ou ka gade pou kòz la nan fay la.

Kreye yon senp sèvè prokurasyon

Li kapab di sou nginx - konfigirasyon nan etablisman sa a se youn nan aplikasyon yo pi komen (epi jistis fasil, nan chemen an). Li itilize prensip la nan sèvè a ki resevwa yon demann, ak Lè sa redireksyon yo nan sit ki nesesè yo. Apre sa, se repons a te espere nan men yo, ki voye yo nan yon sèl la ki moun ki mete travay la. Se konsa, kite pou yo gade nan yon egzanp pou kreye yon pwen baz. Li ap fè fas ak demann itilizatè sèvis 'ak founi yo ak yon imaj ki sòti nan yon anyè lokal yo. Se konsa, yo bloke http ajoute yon lòt sèvè ak kontni sa a:

sèvè {

koute 8080;

rasin / done / up1;

kote / {

}

}

Koulye a, kite a Decoder pou ou: kreye yon sèvè ki senp. Li pral koute pò 8080 pa gen yon koute, Lè sa a, sèvè a pral kouri sou th a 80. Yo pral parèt tout demann yo nan sistèm nan dosye lokal ki ap dirije nan anyè / done / up1 a (nan kou, anvan sa li pral nesesè yo kreye li). Pou yo kapab kapab tcheke li nesesè nan plas dosye a index.html. Akòz plasman nan direktiv nan yon kontèks la nan sèvè a rasin nou ka sèvi ak kote nan tout tan (kòm konsa restriksyon aksè retire). Nou ap kounye a ap travay yo kreye yon prokurasyon. Pou li nan travay, nou bezwen proxy_pass direktiv, pou ki yo pral espesifye Non pwotokòl, ak etablisman an ki pò kòm paramèt (pou koneksyon lokal li pral gade tankou http: // localhost: 8080). Jwenn rezilta sa a:

sèvè {

kote / {

proxy_pass http: // localhost: 8080;

}

kote / images / {

rasin / done;

}

}

Si ou gade nan kòd la ak analize li, ou ka avi ke te kote a inite dezyèm te chanje. Kidonk, nan ka sa a, li ka travay ak ekstansyon imaj nòmal pou li. Yon diferan ti kras, li te kapab ap parèt jan sa a:

kote ~ \ (gif | jpg | png) $ {.

rasin / done / imaj;

}

configuration la, te prokurasyon final la se jan sa a:

sèvè {

kote / {

proxy_pass http: // localhost: 8080 /;

}

kote ~ \ (gif | jpg | png) $ {.

rasin / done / imaj;

}

}

Li pral met deyò ansyen lwil demann nan fen ki gen ekstansyon sa yo epi voye yo bay moun nan ki moun ki mande dosye. pa bliye ke li ap bezwen rekòmanse si ou vle tcheke dosye a konfigirasyon. Epi yo kwè m ', li nan jis nginx-konfigirasyon. Si ou louvri configuration la, te "Vkontakte" sèvè dosye oswa lòt gwo konpayi, yo pral gen kòd la plis pase mo nan atik sa a.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 ht.unansea.com. Theme powered by WordPress.