Kompjûters, Programming
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
Start, trochstart, en log
nginx -s sinjaal
Yn dat gefal kinne jo ferfange de folgjende kommando (moat komme út de brûker dy't lansearre it ark):
- Stop. It wurdt brûkt foar fluch ôfslute.
- 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.
- 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.
- 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
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
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
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
It meitsjen fan in ienfâldich proxy tsjinner
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