Kako namestiti in konfigurirati LEMP na Debian 8 (Jessie)


Eden najpogostejših razlogov za vzpostavitev sistema Linux je namenjen gostovanju spletnih mest. Po raziskavi NetCraft.com iz februarja 2016 o milijonu najbolj zasedenih spletnih mest na svetu jih približno 15,60% deluje na Nginxu.

V povezavi z veliko verjetnostjo, da je na voljo nekakšna dinamična vsebina in nekakšen zaledni del baze podatkov za spletna mesta, je možnost, da lahko skrbnik nastavi strežnike LEMP, zelo koristna za iskalce zaposlitve in delodajalci a-like!

Ta vadnica se bo sprehodila po osnovah namestitve in konfiguriranja strežnika Linux (natančneje Debian 8 Jessie), da deluje kot strežnik LEMP.

Super vprašanje! Kot pri večini stvari v računalniškem svetu je tudi LEMP kratica za Linux, Nginx, MySQL in PHP.

Ta kratica se običajno uporablja za sklicevanje na zbirke programske opreme na spletnem strežniku. Ta vadnica se bo najprej sprehodila po nastavitvi LEMP, zlasti MySQL in PHP.

Preden se ločimo na konfiguracijske vidike sistemov, je pomembno vedeti o Nginxu.

Nginx je začel svoje življenje leta 2002, ko se je računalniški svet začel zavedati, da je spletna mesta z deset tisoč ali več sočasnimi povezavami zelo resnična možnost, zato je bil Nginx ustvarjen iz nič za reševanje te težave.

Namestitev in konfiguriranje MySQL in PHP

1. Ta prvi razdelek bo zajemal Debian kot MySQL in PHP strežnik. Del strežnika LEMP za Linux bi morali že narediti z namestitvijo Debiana! Če pa boste potrebovali vodnik za namestitev Debiana, preberite naslednji članek o TecMint:

  1. Namestitev Debian 8 Jessie

Ko je Debian pripravljen za začetek, lahko postopek namestitve preostale potrebne programske opreme dokončate z enim hitrim ukazom z uporabo "apt" metapakera.

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

Ta postopek lahko traja nekaj časa, odvisno od sistemske strojne opreme in internetne povezave. Od tega pisanja je nova namestitev Debian Jessie z vsemi uporabljenimi posodobitvami zahtevala približno 70 MB arhivov iz skladišč (ni vse tako slabo glede na to, kaj bo strežnik počel, ko bodo stvari končane)! Med postopkom namestitve lahko sistem od uporabnika zahteva, da nastavi korensko uporabniško geslo SQL. To se razlikuje od dejanskega gesla korenskega uporabnika in bi zaradi varnosti verjetno moralo ostati drugačno.

2. Ko apt konča z namestitvijo celotne programske opreme, bodo osnovne storitve začele delovati. Vendar bi se tukaj ustavili za zelo kratek vadnik! Poglejmo torej še malo v konfiguracijo vsakega dela nameščene programske opreme, začenši z MySQL.

3. Po namestitvi MySQL je pogosto priporočljivo, da strežnik SQL izvede nekaj osnovnega hišnega vzdrževanja pri privzeti namestitvi. To je enostavno doseči s pripomočkom mysql_secure_installation .

Ta ukaz se preprosto zažene iz ukazne vrstice in bo pozval uporabnika, da odstrani stvari, kot so anonimni uporabniki, preizkusi zbirke podatkov in odstrani možnost oddaljene prijave root uporabnika v bazo podatkov SQL.

# mysql_secure_installation

Ta ukaz bo zagnal interaktivni poziv, ki bo postavljal vprašanja v zvezi z zgornjimi temami. Ker je apt že pozval k korenskemu geslu MySQL, bo to geslo treba vnesti, če želite spremeniti. Ker je bilo korensko geslo že nastavljeno, je No lahko odgovor na poziv o spremembi korenskega gesla na strežniku MySQL.

4. Naslednji sklop vprašanj bo v zvezi z anonimnimi uporabniki, „testno“ bazo podatkov in korenskim dostopom do baze na daljavo. Običajno je varno odgovoriti Yes na vse te pozive, razen če obstaja poseben razlog, zakaj bi namestitev potrebovala eno od teh možnosti nedotaknjeno.

OPOMBA: Morda pride do napake zaradi neuspešnega brisanja baze podatkov, imenovane "test", ne skrbite zaradi tega, ker baza podatkov lahko obstaja ali pa tudi ne, in ne glede na to, da bo skript še naprej počel tisto, kar je potrebno.

Na tej točki je MySQL pripravljen za uporabo. Brez vedenja, katere podatkovne baze ali uporabniki bodo potrebni, je težko narediti veliko več konfiguracije. Vendar pa večina spletnih mest pogosto samodejno ustvari potrebne zbirke podatkov in uporabnike, ko je programska oprema nameščena. To je sicer zelo odvisno od programske opreme in zahteva hiter vpogled v datoteke README ali navodila za namestitev programske opreme.

5. Zdaj, ko je MySQL konfiguriran, pojdimo naprej in nastavimo nekaj osnovnih nastavitev PHP za ta strežnik. Čeprav obstaja veliko nastavitev, s katerimi je mogoče upravljati PHP, obstaja le nekaj osnovnih, ki bi jih bilo treba skoraj vedno spremeniti. Konfiguracijska datoteka php se nahaja na /etc/php5/fpm/php.ini . Odprite to datoteko s katerim koli urejevalnikom besedil.

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

Z uporabo nanovih iskalnih sposobnosti ctrl+w poiščite niz\"memory_limit" (brez narekovajev). Pri privzeti namestitvi bo ta vrstica že nastavljena na 128M, če pa aplikacija potrebuje več, lahko to vrstico prilagoditi zahtevam.

Druga pomembna možnost preverjanja je\"max_execution_time", privzeto pa bo nastavljena na 30. Če aplikacija zahteva več, je to možnost mogoče spremeniti. Če je to zahteva, poiščite niz\"error_log =" in nato razkomentirajte vrstico, tako da odstranite podpičje, ki je običajno privzeto.

V tem trenutku lahko vrednost konca vrstice dodate dnevniški datoteki. Prepričajte se, da pot obstaja v sistemu. Ko končate s potrebnimi spremembami v datoteki php.ini, shranite spremembe in zapustite urejevalnik besedil. Na tej točki sta MySQL in PHP5 pripravljena za začetek gostovanja spletnih mest. Zdaj je čas, da konfigurirate Nginx.

Namestitev in konfiguriranje Nginxa

6. Nginx (motor X) je nadomestni in zelo zmogljiv spletni strežnik. Ta odsek te vadnice bo opisal nastavitev spletne strani za gostovanje Nginxa. Prvi korak pri konfiguriranju Nginxa je namestitev potrebnih paketov s pomočjo pripomočka "apt".

# apt-get install nginx

Ob predpostavki, da so vse odvisnosti zadovoljene, mora navigacija do naslova IP strežnika v spletnem brskalniku dati privzeto spletno mesto Nginx.

OPOMBA: V nekaterih primerih se strežnik po namestitvi Nginxa ne zažene samodejno. Če navigacija do naslova IP strežnika v spletnem brskalniku ne prikaže spodnje strani, izdajte naslednji ukaz, da zagotovite, da se Nginx zažene.

# service nginx start

Nginx zdaj uspešno gosti privzeto stran. Medtem ko je privzeta stran Debiana bleščeče spletno mesto, bo večina uporabnikov želela gostiti nekaj po meri.

7. Naslednji koraki bodo vodili skozi nastavitev Nginxa za gostovanje drugega spletnega mesta. Nginx ima podobno kot Apache 2 svoj konfiguracijski imenik, ki se nahaja na /etc/nginx . V ta imenik preklopite s pomočjo pripomočka cd.

# cd /etc/nginx

V tej vadnici je nekaj pomembnih datotek in imenikov za nastavitev spletnega mesta z uporabo Nginxa. Prva dva imenika, ki sta pomembna, sta imenika 'spletna mesta so na voljo' in 'spletna mesta omogočena'. Podobno kot Apache 2, Nginx uporablja konfiguracijske datoteke za vsako spletno mesto v imeniku, ki je na voljo, ki so, ko so aktivne, simbolično povezane v imenik, ki omogoča spletna mesta.

Prva stvar, ki jo potrebujete, da se znebite privzetega mesta, je odstranitev simbolične povezave na spletnih mestih, kjer je omogočeno.

# rm sites-enabled/default

8. Zdaj je treba ustvariti in povezati novo konfiguracijsko datoteko spletnega mesta, da bo Nginx lahko služil strani. Ustvarjanje konfiguracijske datoteke spletnega mesta lahko poenostavite s kopiranjem in spreminjanjem privzete konfiguracije spletnih mest.

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

To bo ustvarilo novo konfiguracijsko datoteko spletnega mesta za delo. Odprite to datoteko v urejevalniku besedil, da spremenite pot, po kateri bo Nginx služil datotekam.

# nano sites-available tecmint-test

V tej datoteki je na voljo več pomembnih možnosti, da bo Nginx služil spletnemu mestu. Prva je vrstica, ki se začne z "root", saj ta vrstica določa, kje naj Nginx streže datoteke za to spletno mesto.

Ta vadnica bo pustila kot privzeto vrednost »/ var/www/html« in v ta imenik preprosto postavila datoteke html, ki jih je treba vročiti. Vendar obvezno spremenite to pot, če naj bo na tem strežniku več mest ali konfiguracija po meri.

Naslednja pomembna vrstica je vrstica "indeks". Ker gre v tem članku o namestitvi LEMP in lahko spletno mesto potencialno streže strani php, je treba Nginx obvestiti, da je privzeta stran php stran. Če želite to narediti, na konec seznama datotek preprosto dodajte "index.php".

Preden omogočite novo spletno mesto, mora Nginx nekaj ponuditi. Privzeta indeksna stran že obstaja, vendar za potrditev, da deluje drugo spletno mesto, nadomestimo vsebino privzete strani z nečim drugim.

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

9. Naslednji korak je omogočiti novo spletno mesto tako, da pravkar ustvarjeno konfiguracijsko datoteko povežete z imenikom z omogočenimi spletnimi mesti. To je enostavno doseči z uporabo ukaza ln in nato ponovnim nalaganjem konfiguracije Nginxa s storitvenim pripomočkom.

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

Na tej točki bi moral Nginx služiti novi "preprosti" spletni strani. To lahko potrdimo z navigacijo do IP naslova strežnika prek spletnega brskalnika!

Še enkrat, ta članek naj bi bil zelo preprosta konfiguracija LEMP. Večina spletnih mest bi potrebovala nadaljnjo konfiguracijo vseh vpletenih delov, vendar bi se lahko konfiguracijske možnosti gibale v tisočih! Veliko sreče, pri kateri je bila kdaj nastavitev izbrana za gostovanje spletnih mest.