Kā instalēt un konfigurēt LEMP Debian 8 (Jessie)


Viens no visizplatītākajiem Linux sistēmas iestatīšanas iemesliem ir vietnes (-u) mitināšana. Saskaņā ar NetCraft.com 2016. gada februāra aptauju par 1 miljonu aktīvāko vietņu pasaulē aptuveni 15,60% no tām darbojas Nginx.

Kopā ar lielu varbūtību, ka tiek piedāvāts kaut kāds dinamisks saturs, kā arī sava veida datubāzu aizmugure vietnēm, administratora spēja spēt iestatīt LEMP serverus ir ļoti izdevīga darba meklētājiem un darba devēji līdzīgi!

Šajā apmācībā tiks aprakstīti Linux servera (īpaši Debian 8 Jessie) instalēšanas un konfigurēšanas pamati, lai tas darbotos kā LEMP serveris.

Lielisks jautājums! Tāpat kā lielākajā daļā lietu skaitļošanas pasaulē, LEMP ir saīsinājums Linux, Nginx, MySQL un PHP.

Šo saīsinājumu parasti lieto, lai atsauktos uz programmatūras kolekcijām tīmekļa serverī. Šajā apmācībā vispirms tiks aprakstīta LEMP, īpaši MySQL un PHP, iestatīšana.

Pirms atdalīšanas sistēmu konfigurācijas aspektos ir svarīgi zināt par Nginx.

Nginx sāka savu dzīvi 2002. gadā, kad skaitļošanas pasaule sāka saprast, ka vietnes ar desmit tūkstošiem vai vairāk vienlaicīgiem savienojumiem ir ļoti reāla iespēja, un tāpēc Nginx tika izveidots no jauna, lai risinātu šo problēmu.

MySQL un PHP instalēšana un konfigurēšana

1. Šī pirmā sadaļa aptvers Debian kā MySQL un PHP serveri. LEMP servera Linux daļa jau būtu jāveic, instalējot Debian! Tomēr, ja ir nepieciešama rokasgrāmata par Debian instalēšanu, lūdzu, izlasiet šo rakstu par TecMint:

  1. Debian 8 Jessie instalēšana

Kad Debian ir gatavs uzsākt, pārējās nepieciešamās programmatūras instalēšanas procesu var pabeigt ar vienu ātru komandu, izmantojot ‘apt’ meta-packager.

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

Šis process var aizņemt kādu laiku, ņemot vērā sistēmas aparatūru un interneta savienojumu. Kopš šī raksta, jaunai Debian Jessie instalēšanai ar visiem piemērotajiem atjauninājumiem no krātuvēm bija nepieciešams apmēram 70 MB arhīvu (tas viss nav tik slikti, ņemot vērā to, ko serveris darīs, kad lietas tiks izdarītas)! Instalēšanas procesa laikā sistēma var lūgt lietotāju iestatīt SQL saknes lietotāja paroli. Tas atšķiras no faktiskās root lietotāja paroles, un drošības labad, visticamāk, tam vajadzētu palikt citādam.

2. Kad apt ir pabeidzis visas programmatūras instalēšanu, pamatpakalpojumi tiks izveidoti un darbojas. Tomēr, apstājoties šeit, būtu ļoti īsa apmācība! Tāpēc iegremdēsimies nedaudz vairāk katra programmatūras instalācijas konfigurācijā, sākot ar MySQL.

3. Pēc MySQL instalēšanas bieži tiek ieteikts, lai SQL serverī noklusējuma instalēšanas laikā tiktu veikta kāda pamata mājas uzturēšana. To var viegli paveikt, izmantojot mysql_secure_installation utilītu.

Šī komanda tiek vienkārši palaista no komandrindas un liks lietotājam noņemt tādas lietas kā anonīmus lietotājus, testēt datu bāzes un noņemt iespēju attālajai root lietotāja pieteikšanās SQL datu bāzei.

# mysql_secure_installation

Šī komanda sāks interaktīvu uzvedni, kurā tiks uzdoti jautājumi par iepriekš minētajām tēmām. Tā kā apt jau pieprasīja MySQL saknes paroli, šī parole būs jāievada, lai veiktu jebkādas izmaiņas. Tā kā saknes parole jau bija iestatīta, No var būt atbilde uz uzvedni par saknes paroles maiņu MySQL serverī.

4. Nākamais jautājumu kopums attiecas uz anonīmiem lietotājiem, “testa” datu bāzi un root piekļuvi datu bāzei attālināti. Parasti ir droši atbildēt uz Yes uz visiem šiem jautājumiem, ja vien nav īpaša iemesla, kādēļ iestatījumam viena no šīm opcijām būtu jāatstāj neskarta.

PIEZĪME. Iespējams, rodas kļūda, ja neizdzēšat datubāzi ar nosaukumu “test”. Neuztraucieties par to, jo datubāze var pastāvēt vai var nebūt, un neatkarīgi no tā skripts turpinās darīt nepieciešamo.

Šajā brīdī MySQL ir gatavs darbam. Nezinot, kādas datubāzes vai lietotāji būs nepieciešami, ir grūti izdarīt daudz lielāku konfigurāciju. Tomēr lielākā daļa vietņu, kad programmatūra ir instalēta, bieži automātiski izveidos nepieciešamās datu bāzes un lietotājus. Tomēr tas ir ļoti atkarīgs no programmatūras, un tam būtu nepieciešams ātri apskatīt programmatūras README failus vai instalēšanas instrukcijas.

5. Tagad, kad MySQL ir konfigurēts, ejiet uz priekšu un iestatiet dažus PHP pamata iestatījumus šim konkrētajam serverim. Lai gan ir daudz iestatījumu, ar kuriem var manipulēt PHP, ir tikai daži pamata iestatījumi, kurus gandrīz vienmēr vajadzētu mainīt. PHP konfigurācijas fails atrodas vietnē /etc/php5/fpm/php.ini . Atveriet šo failu ar jebkuru teksta redaktoru.

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

Izmantojot nano meklēšanas spējas ctrl+w meklējiet virkni “memory_limit” (izlaižot pēdiņas). Pēc noklusējuma instalēšanas šī līnija jau būs iestatīta uz 128M, bet, ja lietojumprogrammai ir nepieciešams vairāk, šo rindu var mainīt, lai pielāgotos prasībām.

Vēl viena svarīga pārbaudāmā iespēja ir “max_execution_time”, un pēc noklusējuma tā atkal tiks iestatīta uz 30. Ja lietojumprogrammai ir nepieciešams vairāk, šo opciju var mainīt. Daži cilvēki dod priekšroku arī iestatīt php reģistrēšanu īpašā failā/direktorijā. Ja tā ir prasība, meklējiet virkni “error_log =” un pēc tam noņemiet komentāru no rindas, noņemot semikolu, kas tur parasti atrodas pēc noklusējuma.

Šajā brīdī žurnāla faila vērtību var pievienot rindas beigās. Pārliecinieties, vai sistēmā pastāv ceļš. Kad esat pabeidzis veikt nepieciešamās izmaiņas failā php.ini, saglabājiet izmaiņas un izejiet no teksta redaktora. Šajā brīdī MySQL un PHP5 ir gatavi sākt mitināt vietnes. Tagad ir pienācis laiks konfigurēt Nginx.

Nginx instalēšana un konfigurēšana

6. Nginx (X dzinējs) ir alternatīvs un ļoti spēcīgs tīmekļa serveris. Šajā apmācības sadaļā būs aprakstīta tīmekļa lapas iestatīšana, lai Nginx mitinātu. Pirmais Nginx konfigurēšanas solis ir nepieciešamo pakotņu instalēšana, izmantojot utilītu ‘apt’.

# apt-get install nginx

Pieņemot, ka visas atkarības ir apmierinātas, pārejot uz servera IP adresi tīmekļa pārlūkprogrammā, jānodrošina noklusējuma vietne Nginx.

PIEZĪME: Ir gadījumi, kad pēc Nginx instalēšanas serveris netiek palaista automātiski. Ja, pārlūkojot tīmekļa pārlūkprogrammā, pārejot uz servera IP adresi, netiek iegūta tālāk redzamā lapa, izdodiet šādu komandu, lai pārliecinātos, ka tiek palaists Nginx.

# service nginx start

Nginx tagad veiksmīgi mitina noklusējuma lapu. Lai gan Debian noklusējuma lapa ir bezgaumīga vietne, lielākā daļa lietotāju vēlēsies mitināt kaut ko pielāgotu.

7. Nākamie soļi būs Nginx iestatīšana, lai mitinātu citu vietni. Nginx, tāpat kā Apache 2, ir savs konfigurāciju katalogs, kas atrodas /etc/nginx . Pārslēdzieties uz šo direktoriju, izmantojot kompaktdiska utilītu.

# cd /etc/nginx

Šai apmācībai ir vairāki svarīgi faili un direktoriji, lai izveidotu vietni, izmantojot Nginx. Pirmie divi svarīgie direktoriji ir “pieejamās vietnes” un “vietnēm iespējoti” direktoriji. Līdzīgi kā Apache 2, arī Nginx katrai vietnei pieejamo direktorijā izmanto konfigurācijas failus, kas, kad tie ir aktīvi, ir simboliski saistīti ar vietnēm iespējotajā direktorijā.

Pirmā lieta, kas nepieciešama, lai atbrīvotos no noklusējuma vietnes, ir noņemt simbolisko saiti vietnēs, kurās iespējota vietne.

# rm sites-enabled/default

8. Tagad, lai Nginx apkalpotu lapu, ir jāizveido un jāsaista jauns vietnes konfigurācijas fails. Vietnes konfigurācijas faila izveidi var vienkāršot, nokopējot un modificējot vietņu noklusējuma konfigurāciju.

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

Tādējādi tiks izveidots jauns vietnes konfigurācijas fails, ar kuru strādāt. Atveriet šo failu teksta redaktorā, lai mainītu ceļu, kurā Nginx apkalpos failus.

# nano sites-available tecmint-test

Šajā failā ir vairākas svarīgas iespējas, kas jāmaina, lai Nginx apkalpotu vietni. Pirmā ir līnija, kas sākas ar sakni, jo šī līnija nosaka, kur Nginx vajadzētu apkalpot failus šai vietnei.

Šī apmācība to atstās kā noklusējuma ‘/ var/www/html’ un vienkārši ievietos šajā direktorijā apkalpojamos html failus. Tomēr noteikti modificējiet šo ceļu, ja šajā serverī ir vairākas vietnes vai pielāgota konfigurācija.

Nākamā svarīguma līnija ir rinda ‘indekss’. Tā kā šis raksts ir par LEMP instalēšanu un vietne, iespējams, apkalpo php lapas, Nginx ir jāinformē, ka noklusējuma lapa var būt php lapa. Lai to izdarītu, failu indeksu saraksta beigās vienkārši pievienojiet “index.php”.

Pirms jaunās vietnes iespējošanas Nginx ir jābūt kaut kam, lai to varētu apkalpot. Noklusējuma rādītāja lapa jau pastāv, taču, lai apstiprinātu, ka darbojas cita vietne, aizstāsim noklusējuma lapas saturu ar kaut ko citu.

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

9. Nākamais solis ir iespējot jauno vietni, saistot tikko izveidoto konfigurācijas failu ar vietnēm iespējoto direktoriju. To var viegli panākt, izmantojot komandu ln un pēc tam pārlādējot Nginx konfigurāciju ar pakalpojumu utilītu.

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

Šajā brīdī Nginx vajadzētu apkalpot jauno “vienkāršo” tīmekļa lapu. To var apstiprināt, izmantojot tīmekļa pārlūku, dodoties uz servera IP adresi!

Šis raksts atkal bija domāts kā ļoti vienkāršas LEMP konfigurācijas. Lielākajai daļai vietņu būtu nepieciešama papildu konfigurācija visām iesaistītajām daļām, taču konfigurācijas opcijas var svārstīties tūkstošos! Visu veiksmi, kad jebkad iestatīšana tika izvēlēta vietņu mitināšanai.