Kaip įdiegti ir konfigūruoti LEMP „Debian 8“ (Jessie)


Viena iš labiausiai paplitusių Linux sistemos nustatymo priežasčių yra svetainės (-ių) priegloba. Pagal NetCraft.com 2016 m. vasario mėn. atliktą 1 milijono judriausių svetainių pasaulyje tyrimą, maždaug 15,60 % iš jų veikia Nginx.

Kartu su didele tikimybe, kad bus teikiamas tam tikras dinaminis turinys, taip pat tam tikra duomenų bazių sistema svetainėms, administratorius gali nustatyti LEMP serverius. yra labai naudinga ieškantiems darbo ir darbdaviams!

Šioje mokymo programoje bus aprašyti „Linux“ serverio (konkrečiai Debian 8 Jessie), kad jis veiktų kaip LEMP serveris, diegimo ir konfigūravimo pagrindai.

Kas yra LEMP serveris?

Puikus klausimas! Kaip ir daugelyje kitų kompiuterių pasaulyje, LEMP yra Linux, Nginx, MySQL ir PHP akronimas.

Šis akronimas dažniausiai naudojamas programinės įrangos rinkiniams žiniatinklio serveryje nurodyti. Šioje mokymo programoje pirmiausia bus paaiškinta, kaip nustatyti LEMP, konkrečiai MySQL ir PHP.

Prieš pradedant atskirti sistemų konfigūracijos aspektus, svarbu žinoti apie Nginx.

Kas yra Nginx?

Nginx pradėjo gyvuoti 2002 m., kai kompiuterių pasaulis suprato, kad svetainės su dešimt tūkstančių ar daugiau lygiagrečių jungčių yra labai reali galimybė, todėl Nginx buvo sukurtas nuo nulio, siekiant išspręsti šią problemą.

MySQL ir PHP diegimas ir konfigūravimas

1. Ši pirmoji dalis apims „Debian“ kaip MySQL ir PHP serverį. LEMP serverio Linux dalis jau turėtų būti atlikta įdiegus Debian! Tačiau jei prireiktų vadovo, kaip įdiegti „Debian“, perskaitykite šį „TecMint“ straipsnį:

  1. Debian 8 Jessie diegimas

Kai „Debian“ bus pasiruošęs pradėti, likusios reikalingos programinės įrangos diegimo procesą galima užbaigti viena greita komanda naudojant „apt“ meta-pakavimo priemonę.

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

Atsižvelgiant į sistemos aparatinę įrangą ir interneto ryšį, šis procesas gali užtrukti. Šio rašymo metu naujam Debian Jessie diegimui su visais pritaikytais naujinimais reikėjo apie 70 MB archyvų iš saugyklų (ne viskas taip blogai, atsižvelgiant į tai, ką serveris veiks, kai viskas bus baigta)! Diegimo proceso metu sistema gali paprašyti vartotojo nustatyti SQL root vartotojo slaptažodį. Tai skiriasi nuo tikrojo root vartotojo slaptažodžio ir saugumo sumetimais tikriausiai turėtų skirtis.

2. Kai apt baigs diegti visą programinę įrangą, pradės veikti pagrindinės paslaugos. Tačiau sustojus čia būtų labai trumpa pamoka! Taigi, pasinerkime į kiekvienos įdiegtos programinės įrangos konfigūraciją, pradedant MySQL.

3. Įdiegus MySQL, dažnai rekomenduojama, kad SQL serveris atliktų pagrindinę namų tvarkymą, kai įdiegiamas numatytasis diegimas. Tai lengva padaryti naudojant mysql_secure_installation priemonę.

Ši komanda tiesiog paleidžiama iš komandinės eilutės ir paragins vartotoją pašalinti tokius dalykus kaip anoniminiai vartotojai, tikrinti duomenų bazes ir pašalinti galimybę nuotoliniu būdu prisijungti prie SQL duomenų bazės šakninio vartotojo.

mysql_secure_installation

Ši komanda pradės interaktyvų raginimą, kuriame bus užduodami klausimai, susiję su aukščiau nurodytomis temomis. Kadangi apt jau buvo paraginta įvesti MySQL root slaptažodį, tą slaptažodį reikės įvesti, kad būtų galima atlikti bet kokius pakeitimus. Kadangi pagrindinis slaptažodis jau buvo nustatytas, Ne gali būti atsakymas į raginimą pakeisti pagrindinį slaptažodį MySQL serveryje.

4. Kitas klausimų rinkinys bus susijęs su anoniminiais naudotojais, „testavimo“ duomenų baze ir pagrindine prieiga prie duomenų bazės nuotoliniu būdu. Į visus šiuos raginimus paprastai saugu atsakyti taip, nebent yra tam tikros priežasties, kodėl vieną iš šių parinkčių reikia palikti nepažeistą.

PASTABA: gali įvykti klaida, kai nepavyko ištrinti duomenų bazės, vadinamos testas. Nesijaudinkite dėl to, nes duomenų bazė gali arba gali nebūti ir nepaisant to, scenarijus ir toliau darys tai, ko reikia.

Šiuo metu MySQL yra paruoštas naudoti. Nežinant, kokių duomenų bazių ar vartotojų reikės, sunku atlikti daug daugiau konfigūravimo. Tačiau dauguma svetainių dažnai automatiškai sukuria reikiamas duomenų bazes ir vartotojus, kai įdiegiama programinė įranga. Tačiau tai labai priklauso nuo programinės įrangos ir reikės greitai peržvelgti programinės įrangos README failus arba diegimo instrukcijas.

5. Dabar, kai MySQL sukonfigūruotas, eikime į priekį ir nustatykime pagrindinius PHP nustatymus šiam serveriui. Nors yra daugybė nustatymų, kuriais galima manipuliuoti PHP, yra tik keli pagrindiniai, kuriuos beveik visada reikėtų keisti. php konfigūracijos failas yra adresu /etc/php5/fpm/php.ini. Atidarykite šį failą bet kuriuo teksto redaktoriumi.

nano /etc/php5/fpm/php.ini

Naudodami nano paieškos galimybes ctrl+w ieškokite eilutės „memory_limit“ (be kabučių). Įdiegus numatytuosius nustatymus, ši eilutė jau bus nustatyta į 128 M, bet jei programai prireiktų daugiau, šią eilutę galima pakeisti, kad atitiktų reikalavimus.

Kita svarbi parinktis, kurią reikia patikrinti, yra maksimalus_vykdymo_laikas ir vėl pagal numatytuosius nustatymus bus nustatytas į 30. Jei programai reikia daugiau, šią parinktį galima pakeisti. Kai kurie žmonės taip pat nori nustatyti php registravimą į specialų failą/katalogą. Jei to reikia, ieškokite eilutės „error_log =“, tada panaikinkite eilutės komentarą pašalindami kabliataškį, kuris paprastai yra pagal numatytuosius nustatymus.

Šiuo metu eilutės pabaigoje galima pridėti žurnalo failo reikšmę. Įsitikinkite, kad sistemoje yra kelias. Baigę atlikti reikiamus php.ini failo pakeitimus, išsaugokite pakeitimus ir išeikite iš teksto rengyklės. Šiuo metu MySQL ir PHP5 yra pasirengę pradėti prieglobą svetaines. Dabar atėjo laikas konfigūruoti Nginx.

„Nginx“ diegimas ir konfigūravimas

6. Nginx (X variklis) yra alternatyvus ir labai galingas žiniatinklio serveris. Šiame šio vadovo skyriuje bus paaiškinta, kaip nustatyti tinklalapį, kad „Nginx“ būtų priglobtas. Pirmasis „Nginx“ konfigūravimo veiksmas yra įdiegti reikiamus paketus naudojant „apt“ programą.

apt-get install nginx

Darant prielaidą, kad visos priklausomybės yra patenkintos, naršydami į serverio IP adresą žiniatinklio naršyklėje turėtų būti gauta numatytoji „Nginx“ svetainė.

PASTABA: yra atvejų, kai įdiegus Nginx serveris nepaleidžiamas automatiškai. Jei naršydami į serverio IP adresą žiniatinklio naršyklėje toliau pateiktas puslapis nerodomas, išduokite šią komandą, kad įsitikintumėte, jog Nginx yra paleistas.

service nginx start

„Nginx“ dabar sėkmingai priglobia numatytąjį puslapį. Nors numatytasis „Debian“ puslapis yra prašmatni svetainė, dauguma vartotojų norės priglobti ką nors pritaikyto.

7. Kiti veiksmai bus susiję su „Nginx“ nustatymu, kad būtų galima priglobti kitą svetainę. „Nginx“, kaip ir „Apache 2“, turi savo konfigūracijų katalogą, esantį adresu /etc/nginx. Perjunkite į šį katalogą naudodami cd paslaugų programą.

cd /etc/nginx

Šiame vadove yra keli svarbūs failai ir katalogai, skirti sukurti svetainę naudojant Nginx. Pirmieji du svarbūs katalogai yra katalogai „galimos svetainės“ ir „svetainės įgalintos“. Panašiai kaip „Apache 2“, „Nginx“ naudoja konfigūracijos failus kiekvienai pasiekiamų svetainių kataloge esančiai svetainei, kurios, kai aktyvios, yra simboliškai susietos su svetainėmis įgalintame kataloge.

Pirmas dalykas, kurio reikia norint atsikratyti numatytosios svetainės, yra pašalinti simbolinę nuorodą svetainėse, kuriose įgalinta.

rm sites-enabled/default

8. Dabar reikia sukurti naują svetainės konfigūracijos failą ir susieti jį, kad „Nginx“ galėtų teikti puslapį. Svetainės konfigūracijos failo kūrimą galima supaprastinti nukopijuojant ir pakeitus numatytąją svetainių konfigūraciją.

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

Taip bus sukurtas naujas svetainės konfigūracijos failas, su kuriuo galėsite dirbti. Atidarykite šį failą teksto rengyklėje, kad pakeistumėte kelią, kuriuo „Nginx“ teiks failus.

nano sites-available tecmint-test

Šiame faile yra keletas svarbių parinkčių, kurias reikia pakeisti, kad „Nginx“ galėtų aptarnauti svetainę. Pirmoji yra eilutė, kuri prasideda raide „root“, nes ši eilutė apibrėžia, kur „Nginx“ turėtų teikti šios konkrečios svetainės failus.

Šioje mokymo programoje jis bus numatytasis „/var/www/html“, o pateiktini HTML failai tiesiog įdės į šį katalogą. Tačiau būtinai pakeiskite šį kelią, jei šiame serveryje turi būti kelios svetainės arba pasirinktinė konfigūracija.

Kita svarbi eilutė yra „indekso“ eilutė. Kadangi šis straipsnis yra apie LEMP diegimą ir svetainė gali aptarnauti php puslapius, Nginx reikia informuoti, kad numatytasis puslapis gali būti php puslapis. Norėdami tai padaryti, failų indekso sąrašo pabaigoje tiesiog pridėkite „index.php“.

Prieš įgalinant naują svetainę, ten turi būti kažkas, ką „Nginx“ galėtų aptarnauti. Numatytasis indekso puslapis jau yra, bet norėdami patvirtinti, kad veikia kita svetainė, pakeiskime numatytojo puslapio turinį kitu.

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

9. Kitas veiksmas – įgalinti naują svetainę susiejant ką tik sukurtą konfigūracijos failą su katalogu svetainės įgalintos. Tai lengva padaryti naudojant komandą ln ir iš naujo įkeliant Nginx konfigūraciją su paslaugų programa.

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

Šiuo metu „Nginx“ turėtų aptarnauti naują „paprastą“ tinklalapį. Tai galima patvirtinti nuėjus į serverio IP adresą per interneto naršyklę!

Vėlgi, šis straipsnis turėjo būti labai paprastos LEMP konfigūracijos. Daugumoje svetainių reikės papildomos visų susijusių dalių konfigūracijos, tačiau konfigūracijos parinktys gali siekti tūkstančius! Sėkmės, kai kada nors buvo pasirinkta svetainių talpinimo sąranka.