KompjûtersProgramming

Nginx: Setup en ynstallaasje

Wat is apache, nginx? Doel, eigenskippen, maatwurk opsjes - dat binne de dingen dy't elts web developer moat wêze fertroud te testen harren ûntwikkelings.

Oer nginx Say in Wurd

Dit ark hat ien wichtichste en ferskate workflows. It earste behannelet lêzing en konfiguraasje Ferifikaasje. Ek ûnder syn kontrôle is workflow behear. It probleem fan it ferline - te hanneljen ynkommende fersiken. De nginx gebrûk model dat basearre is op 'e eveneminten. Meganismen wurde ek brûkt wurde, ôfhinklik fan it bestjoeringssysteem om te kommen ta doelmjittige allokaasje fersiken direkt tusken de arbeider prosessen. Har oantal wurdt altyd oanjûn yn de konfiguraasje triem. De wearde kin sawol fêste of set automatysk, liede troch it oantal prosessor kearnen dy't kin wurde ôfhannele. Yn nginx konfiguraasje fan it systeem en de modules wurdt útfierd mei help fan de konfiguraasje triem. Dêrom, as jo moatte feroarje wat, je moatte sykjen foar syn namme. Meastal is it yn 'e rjochtline / etc / nginx (mar de rûte kinne ôfwike mei oare systemen) en hat in útwreiding .conf.

Start, trochstart, en log

Om do dit, moatte jo meitsje de útfierbere rint. It ynstellen fan nginx-tsjinner is allinne mooglik as it úteinset. Behear wurdt útfierd tank te skilje it programma mei de -s parameter. Om dit te dwaan, brûk de neikommende:

nginx -s sinjaal

Yn dat gefal kinne jo ferfange de folgjende kommando (moat komme út de brûker dy't lansearre it ark):

  1. Stop. It wurdt brûkt foar fluch ôfslute.
  2. Reload. De ploech nedich te ferfarskjen de konfiguraasje triem. It feit is dat alle feroarings sille gjin effekt hat oant de triem wurket. En om te aktivearjen, in herstarten is needsaaklik. Sa gau as jo krije dit sinjaal, de wichtichste proses begjint te kontrolearjen it correctness fan de syntaktyske komponint fan 'e konfiguraasjetriem en besykje ta te passen de begelieding beskikber dêr. Yn gefal fan mislearring, dan sil rôlje werom feroarings en sil wurkje mei it âlde parameters. As alles is suksesfol, dan sil begjinne nije workflows, en de âlde sil stjoerd wurde nei de fraach ein.
  3. Ofslúte. Wurdt brûkt foar glêd beëinigjen fan de wurksumheden. It wurdt brûkt as jo wolle wachtsje oant de hjoeddeiske fersiken finish hanthavene.
  4. Weriepenje. Slute en iepen log triemmen.

Mei help fan Utilities

Setting prosessen kinne ek wurde útfierd mei help fan Unix middels (kill nut sil wurde besprutsen as foarbyld). Se meastal brûke in meganisme om stjoere it sinjaal streekrjocht nei it proses gegevens. Se wurde ferbûn troch middel fan ID. Dizze gegevens wurdt opslein yn nginx.pid triem. Lit ús der fan út dat wy binne ynteressearre yn it proses №134. Dan, foar de glêde dien meitsjen fan de needsaak om te stjoeren ús de folgjende ynformaasje:

deadzje -s Ofslúte 1628

Lit ús der fan út, dat wy wolle sjogge in list fan alle triemmen iepenje. Wy binne meitsje gebrûk fan de nuttichheid ps. It team ek sil sjen as folget:

ps -ax | grep nginx

Dat is, lykas jo sjen kinne, troch mei help fan ekstra ynstruminten jouwe oan dat it giet syn tapassing. En no litte wy rjochtsje op hoe't ynsette nginx-konfiguraasje.

De struktuer fan it konfiguraasjetriem

Ynstallearjen en konfigurearjen nginx omfiemet wurkje mei de modules. Se wurde ynsteld mei help fan de oanwizings dy't binne oantsjutte yn de konfiguraasje triem. Se kinne wêze simpel of blok. It earste type bestiet út de rjochtlinen en parameters, dy't wurde skieden troch spaasjes, en harren ein wurdt oanjûn troch in puntkomma - (;). It blok hat in fergelykbere struktuer. Mar ynstee fan dizze rjochtline sluting leit ekstra set fan de ynstruksjes dy't pleatst yn de krullend heakjes ({} ynstruksjes). At se kinne skriuwe de nammen en oare parameters fan it proses, se wurde neamd sokke konstruksjes hawwe de kontekst. As foarbyld, http, lokaasje en server.

De ferdieling fan statyske ynhâld

Dit is ien fan de meast wichtige útdagings konfrontearre mei de nginx konfiguraasje. Under de statistyske ferdieling fan de ynhâld is bedoeld ôfbyldings en HTML-siden (net dynamysk). Stel dat wy moatte in inkele wurk oan it opsetten fan it kluster nix nginx. Is it dreech om te dwaan? Nee, lit we ris nei in foarbyld. Foar't ynstapplak op it, is it nedich om detail de betingsten fan it probleem. Sa, ôfhinklik fan it fersyk, de triemmen sille komme út ferskate lokale mappen. Sa, yn 'e / data / www wy hawwe HTML-dokuminten. En yn de map / data / ôfbyldings befetsje ôfbyldings. Optimale ynstelling nginx yn dit gefal freget it bewurkjen fan it konfiguraasjetriem, dy't jim moatte jo de tsjinner ienheid binnen http. Om stypje de twa sil brûkt wurde as lokaasje.

Útfiering: server

Dus, earst moatte wy meitsje triemtafels en set harsels yn 'e triemmen se moatte útwreidzje (yn html jo moatte foegjen ynhâld). Dêrnei iepenje de konfiguraasje triem. Yn it de standert tsjinner hat al ferskate blokken, dy't foar it grutste part binne kommintaar út. Om dat te berikken optimaal resultaten, dit proses moat it dien wurde mei respekt foar alle komponinten standert. Dan heakje in nij tsjinner ienheid mei help fan dizze koade:

http {

server {

}

}

De konfiguraasjetriem kin wurkje mei ferskate sokke blokken. Mar se moatte wurde ûnderskaat troch harren nammen en havens troch hokker gegevens binnenkomt.

Útfiering: lokaasje

Fêststeld binnen de tsjinner:

Location / {

root / data / www;

}

De oanwêzigens fan 'e teken "/" is nedich om te ferlykjen de verkregen gegevens en sjen oft der sa'n in adres fan de ferwurke fersyk hjir. As der gjin problemen, dan spesifisearje it paad / data / www nei de winske triem dat leit yn 'e lokale systeem. As der in wedstriid mei in pear blokken, dan selektearje de iene mei de langste foarheaksel. Yn dit foarbyld, de lingte is gelyk oan ien, dat wol sizze, it brûken sil allinnich yn it gefal dat der gjin "konkurrinsje". No, lit it sil update:

lokaasje / images / {

root / data;

}

Hoe kinne werkenne, wy sykje in byld. No, lit ús kombinearje alle ûntwikkelings dy't wiene earder, en de konfiguraasje op dit stuit is as folget:

server {

Location / {

root / data / www;

}

lokaasje / images / {

root / data;

}

}

Dit is in wurkjende ferzje fan dat gefal wurdt de standert poarte №80. Dizze tsjinner sûnder problemen kinne beskikber wêze op jo kompjûter, as jo gean nei it adres: http: // localhost /. Hoe wurket dit allegear wurkje?

It prinsipe fan de wurking fan it foarbyld

Sa, doe't se komme oan fragen dy't begjint mei in / ôfbyldings, de tsjinner fan 'e byhearrende directory triemmen sille stjoerd wurde nei de brûker. Yn syn ôfwêzichheid wurdt jûn ynformaasje oanjouwe it fersin 404. As útfierd nginx konfiguraasje op de lokale kompjûter, dan it fersyk http: //localhost/images/example.png sille wy krije in triem waans lokaasje /data/images/example.png. As jo oantsjutte a "/" symboal sykjen wurdt útfierd yn de map / data / www. Mar wy hawwe allinne feroare de konfiguraasje. It begjint te wurkjen, dan moat 'e nij starte. Om dit te dwaan, brûk de nginx -s reload. Yn it gefal dêr't it normale bewurking is net mooglik, yn 'e access.log en error.log triemmen leit yn de rjochtline / usr / local / nginx / logs, kinne jo sjen foar de oarsaak fan' e skuld.

It meitsjen fan in ienfâldich proxy tsjinner

Kin sein wurde oer nginx - konfiguraasje fan dizze fasiliteit is ien fan de meast foarkommende applikaasjes (en frij maklik, troch de wei). It brûkt it prinsipe fan de tsjinner dat krijt in fersyk, en dan trochferwizings se oan de nedige siden. Dêrnei, it antwurd wurdt ferwachte fan harren, dy't stjoert se oan dyjinge dy't de taak. Sa litte wy sjen nei in foarbyld fan it meitsjen fan in basis punt. It sil him dwaande hâlde mei service brûkers 'fersiken en soargje se mei in ôfbylding fan in lokale triemtafel. Dus, blokkearje http foegjen oare tsjinner mei de folgjende ynhâld:

server {

harkje 8080;

root / data / up1;

Location / {

}

}

No, lit ús ûntsiferje foar jo: it meitsjen fan in ienfâldige tsjinner. Hy sil harkje nei haven 8080 hat gjin harkje, dan de tsjinner sil rinne op 'e 80 th. Sille werjûn wurde alle fersiken binnen de lokale triem systeem dat binne rjochte oan de triemtafel / data / up1 (fansels, foardat dat it sil wêze nedich te meitsjen it). Om kinne om te kontrolearjen is it nedich om de index.html triem. As gefolch fan de pleatsing fan rjochtlinen yn it ramt fan 'e woartel tsjinner kinne wy brûke lokaasje op alle tiden (lykas dus fuorthelle tagong beheining). Wy binne no dwaande om in proxy. Foar it te wurkjen, wy moatte proxy_pass rjochtline, dêr't wurdt opjûn protokol namme, en de poarte foarsjenning as parameter (foar lokale ferbining It sil sjen as http: // localhost: 8080). Get dit resultaat:

server {

Location / {

proxy_pass http: // localhost: 8080;

}

lokaasje / images / {

root / data;

}

}

As jo sjogge nei de koade en analysearje kin, kinne jo fernimme dat it twadde ienheid lokaasje is feroare. Sa, yn dit gefal, it kin wurkje mei typyske taheaksels ôfbyldings. In bytsje oars, it koe wurde werjûn as folget:

lokaasje ~ \ (jpeg | jpg | png). $ {

root / data / ôfbyldings;

}

De úteinlike proxy ynstellings is as folget:

server {

Location / {

proxy_pass http: // localhost: 8080 /;

}

lokaasje ~ \ (jpeg | jpg | png). $ {

root / data / ôfbyldings;

}

}

It sil filterje út fersiken oan 'e ein dêr't der dizze taheaksels en stjûr se oan' e persoan dy't frege triemmen. Net ferjitte dat it sil moatte opnij starte as jo wolle kontrolearje de konfiguraasje triem. En leau my, it is krekt nginx-konfiguraasje. As jo iepenje de konfiguraasje "Vkontakte" triem server of oare grutte bedriuw, sy sille hawwe de koade mear as wurden yn dit artikel.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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