Hvernig á að setja upp og stilla LEMP á Debian 8 (Jessie)


Ein algengasta ástæðan fyrir því að setja upp Linux kerfi er í þeim tilgangi að hýsa vefsíðu(r). Samkvæmt könnun NetCraft.com frá febrúar 2016 á 1 milljón umsvifamestu vefsíðum í heimi, keyra um það bil 15,60% þeirra á Nginx.

Samhliða því miklar líkur á því að verið sé að þjóna einhvers konar kraftmiklu efni sem og einhvers konar bakhlið gagnagrunns fyrir vefsíðurnar, er möguleikinn fyrir stjórnanda til að geta sett upp LEMP netþjóna mjög gagnlegur fyrir atvinnuleitendur og vinnuveitendur eins og!

Þessi kennsla mun fara í gegnum grunnatriðin við að setja upp og stilla Linux þjón (sérstaklega Debian 8 Jessie) til að virka sem LEMP þjónn.

Frábær spurning! Eins og með flesta hluti í tölvuheiminum er LEMP skammstöfun fyrir Linux, Nginx, MySQL og PHP.

Þessi skammstöfun er almennt notuð til að vísa til hugbúnaðarsafna á vefþjóni. Þessi kennsla mun fyrst ganga í gegnum uppsetningu LEMP, sérstaklega MySQL og PHP.

Áður en skipt er í stillingarþætti kerfanna er mikilvægt að vita um Nginx.

Nginx hóf líf sitt árið 2002 þegar tölvuheimurinn fór að átta sig á því að vefsíður með tíu þúsund eða fleiri samhliða tengingar voru mjög raunverulegur möguleiki og fyrir vikið var Nginx búið til frá grunni til að taka á þessu vandamáli.

Uppsetning og uppsetning MySQL og PHP

1. Þessi fyrsti hluti mun fjalla um Debian sem MySQL og PHP netþjón. Linux hluti LEMP þjónsins ætti nú þegar að vera búinn með því að setja upp Debian! Hins vegar, ef þörf er á leiðbeiningum um hvernig á að setja upp Debian, vinsamlegast lestu eftirfarandi grein um TecMint:

  1. Uppsetning á Debian 8 Jessie

Þegar Debian er tilbúinn til að fara í gang er hægt að klára ferlið við að setja upp afganginn af nauðsynlegum hugbúnaði með einni fljótlegri skipun með því að nota 'apt' meta-pakkann.

# apt-get install mysql-server-5.5 php5-mysql php5

Þetta ferli gæti tekið nokkurn tíma, allt eftir vélbúnaði kerfisins og nettengingunni. Þegar þetta er skrifað krafðist ný Debian Jessie uppsetning með öllum uppfærslum beitt um 70MB af skjalasafni úr geymslunum (ekki svo slæmt miðað við hvað þjónninn mun gera þegar hlutirnir eru búnir)! Meðan á uppsetningarferlinu stendur gæti kerfið beðið notandann um að stilla SQL rót notanda lykilorð. Þetta er öðruvísi en lykilorð raunverulegs rótnotanda og til öryggis ætti það líklega að vera öðruvísi.

2. Þegar apt hefur lokið við að setja upp allan hugbúnaðinn verður grunnþjónustan komin í gang. Hins vegar, að stoppa hér myndi gera mjög stutta kennslu! Svo skulum við kafa aðeins meira í uppsetningu hvers hugbúnaðarhluta sem er uppsettur frá og með MySQL.

3. Eftir MySQL uppsetningu er oft mælt með því að SQL þjónninn láti gera grunn viðhald á sjálfgefna uppsetningunni. Þetta er auðveldlega gert með mysql_secure_installation tólinu.

Þessi skipun er einfaldlega keyrð frá skipanalínunni og mun hvetja notandann til að fjarlægja hluti eins og nafnlausa notendur, prófa gagnagrunna og fjarlægja möguleikann fyrir ytri rót notanda innskráningu í SQL gagnagrunninn.

# mysql_secure_installation

Þessi skipun mun ræsa gagnvirka kvaðningu sem mun spyrja spurninga varðandi ofangreind efni. Þar sem apt hefur þegar verið beðið um MySQL rót lykilorð, þarf að slá inn það lykilorð til að gera breytingar. Þar sem rótarlykilorðið var þegar stillt getur Nei verið svarið við fyrirspurninni um að breyta rótarlykilorðinu á MySQL þjóninum.

4. Næsta sett af spurningum mun snúa að nafnlausum notendum, „prófunar“ gagnagrunninum og rótaraðgangi að gagnagrunninum úr fjarlægð. Það er venjulega óhætt að svara við öllum þessum leiðbeiningum nema það sé sérstök ástæða fyrir því að uppsetningin þyrfti að hafa einn af þessum valkostum ósnortinn.

ATHUGIÐ: Það gæti komið upp villa um að ekki hafi tekist að eyða gagnagrunni sem kallast 'próf', ekki hafa áhyggjur af þessu þar sem gagnagrunnurinn gæti verið til eða ekki og óháð því að handritið mun halda áfram að gera það sem þarf.

Á þessum tímapunkti er MySQL tilbúið til notkunar. Án þess að vita hvaða gagnagrunna eða notendur þarf, er erfitt að gera miklu meiri stillingar. Hins vegar munu flestar vefsíður oft búa til nauðsynlega gagnagrunna og notendur sjálfkrafa þegar hugbúnaðurinn er settur upp. Þetta er þó mjög háð hugbúnaði og myndi krefjast skjótrar skoðunar yfir README skrár hugbúnaðarins eða uppsetningarleiðbeiningar.

5. Nú þegar MySQL er stillt, skulum við halda áfram og setja upp nokkrar grunnstillingar PHP fyrir þennan tiltekna netþjón. Þó að það séu fullt af stillingum sem hægt er að vinna með fyrir PHP þá eru aðeins nokkrar grunnstillingar sem næstum alltaf ætti að breyta. PHP stillingarskráin er staðsett á /etc/php5/fpm/php.ini. Opnaðu þessa skrá með hvaða textaritli sem er.

# nano /etc/php5/fpm/php.ini

Notaðu leitarhæfileika nano ctrl+w leitaðu að strengnum \memory_limit (slepptu gæsalöppunum). Á sjálfgefna uppsetningu verður þessi lína nú þegar stillt á 128M en ef forrit þarf meira getur þessi lína verði breytt til að mæta kröfum.

Annar mikilvægur valkostur til að athuga er \max_execution_time og aftur sjálfgefið verður það stillt á 30. Ef forrit krefst meira er hægt að breyta þessum valkosti. Sumir vilja líka setja upp php skráningu í sérstaka skrá/skrá. Ef þetta er krafa, leitaðu að strengnum \error_log = og afskrifaðu síðan línuna með því að fjarlægja semípunktinn sem er venjulega þar sjálfgefið.

Á þessum tímapunkti er hægt að bæta við gildi fyrir annálaskrána í lok línunnar. Vertu viss um að leiðin sé til í kerfinu. Þegar þú hefur lokið við að gera nauðsynlegar breytingar á php.ini skránni skaltu vista breytingarnar og hætta í textaritlinum. Á þessum tímapunkti eru MySQL og PHP5 tilbúin til að byrja að hýsa síður. Nú er kominn tími til að stilla Nginx.

Að setja upp og stilla Nginx

6. Nginx (vél X) er annar og mjög öflugur vefþjónn. Þessi hluti þessarar kennslu mun ganga í gegnum uppsetningu vefsíðu fyrir Nginx til að hýsa. Fyrsta skrefið til að stilla Nginx er að setja upp nauðsynlega pakka með því að nota „apt“ tólið.

# apt-get install nginx

Að því gefnu að öll ósjálfstæði séu uppfyllt, ætti að fletta að IP tölu netþjónsins í vafra að gefa sjálfgefna Nginx vefsíðuna.

ATH: Það eru tilvik þar sem þjónninn er ekki ræstur sjálfkrafa eftir að Nginx hefur verið sett upp. Ef að fletta að IP tölu netþjónsins í vafra gefur ekki síðuna hér að neðan skaltu gefa út eftirfarandi skipun til að tryggja að Nginx sé ræst.

# service nginx start

Nginx hýsir nú sjálfgefna síðuna með góðum árangri. Þó að Debian sjálfgefin síða sé áberandi vefsíða, munu flestir notendur vilja hýsa eitthvað sérsniðið.

7. Næstu skref munu ganga í gegnum uppsetningu Nginx til að hýsa aðra vefsíðu. Nginx, líkt og Apache 2, hefur sína eigin stillingarskrá sem staðsett er á /etc/nginx. Skiptu yfir í þessa möppu með því að nota CD tólið.

# cd /etc/nginx

Fyrir þessa kennslu eru nokkrar mikilvægar skrár og möppur til að setja upp vefsíðu með Nginx. Fyrstu tvær möppurnar sem eru mikilvægar eru „síður-tiltækar“ og „síður-virkar“ möppurnar. Líkt og Apache 2, notar Nginx stillingarskrár fyrir hverja síðu í möppunni sem er tiltæk vefsvæði sem þegar þær eru virkar eru tengdar á táknrænan hátt í möppunni sem er virkt fyrir vefsvæði.

Það fyrsta sem þarf til að losna við sjálfgefna síðuna er að fjarlægja táknræna hlekkinn á vefsvæðum sem virkjað er.

# rm sites-enabled/default

8. Nú þarf að búa til nýja stillingarskrá fyrir síðuna og tengja hana til þess að Nginx geti þjónað síðunni. Hægt er að einfalda uppsetningarskrá vefsvæðisins með því að afrita og breyta sjálfgefna stillingum vefsvæða.

# cp sites-available/default sites-available/tecmint-test

Þetta mun búa til nýja síðustillingarskrá til að vinna með. Opnaðu þessa skrá í textaritli til að breyta slóðinni sem Nginx mun þjóna skrám.

# nano sites-available tecmint-test

Innan þessarar skráar eru nokkrir mikilvægir valkostir til að breyta til að Nginx geti þjónað síðu. Sú fyrsta er línan sem byrjar á „rót“ þar sem þessi lína skilgreinir hvar Nginx ætti að þjóna skrám fyrir þessa tilteknu síðu.

Þessi kennsla mun skilja hana eftir sem sjálfgefið „/var/www/html“ og einfaldlega setja html skrárnar sem á að þjóna í þessa möppu. Hins vegar, vertu viss um að breyta þessari slóð ef það eiga að vera margar síður eða sérsniðnar stillingar á þessum netþjóni.

Næsta lína sem skiptir máli er „vísitölu“ línan. Þar sem þessi grein er um LEMP uppsetningu og síða gæti hugsanlega þjónað php síðum, þarf að upplýsa Nginx um að sjálfgefna síðan gæti verið php síða. Til að gera þetta skaltu einfaldlega bæta 'index.php' við lok skráarlistans.

Áður en nýju síðunni er virkjað þarf eitthvað að vera til staðar fyrir Nginx til að þjóna. Sjálfgefin skráarsíða er þegar til en til að staðfesta að önnur síða sé að virka skulum við skipta út innihaldi sjálfgefna síðunnar fyrir eitthvað annað.

# echo “It's ALIVE!” > /var/www/html/index.html

9. Næsta skref er að virkja nýja síðuna með því að tengja stillingarskrána sem nýbúin var að búa til við möppuna sem virkjað er fyrir vefsvæði. Þetta er auðvelt að ná með því að nota ln skipunina og síðan endurhlaða stillingar Nginx með þjónustutólinu.

# ln -s /etc/nginx/sites-available/tecmint-test sites-enabled/tecmint-test
# service nginx reload

Á þessum tímapunkti ætti Nginx að þjóna nýju „einföldu“ vefsíðunni. Þetta er hægt að staðfesta með því að fara á IP tölu netþjónsins í gegnum vafra!

Aftur átti þessi grein að vera mjög einfaldar stillingar LEMP. Flestar síður myndu krefjast frekari stillingar fyrir alla hluta sem taka þátt en stillingarmöguleikarnir gætu verið í þúsundum! Gangi þér sem best í hvaða uppsetningu sem er valin til að hýsa vefsíður.