Hvernig á að setja upp LEMP Stack með PhpMyAdmin í Ubuntu 20.04


Fyrir ykkur sem ekki vita hvað LEMP er – þetta er sambland af hugbúnaðarpökkum – Linux, Nginx (borið fram EngineX), MariaDB og PHP.

Þú getur notað LEMP bæði í prófunartilgangi eða í raunverulegu framleiðsluumhverfi til að dreifa vefforritum með PHP ramma eins og Laravel eða Yii, eða innihaldsstjórnunarkerfi eins og Joomla

Þú gætir velt því fyrir þér hver er munurinn á LAMP og LEMP. Jæja, eini munurinn er vefþjónninn sem er innifalinn - Apache (í LAMP) og Nginx (í LEMP). Báðir vefþjónarnir eru nokkuð góðir og þó að Apache sé sá sem oftast er notaður, dregur Nginx sig ekki á neinn hátt.

Annað mikið notað forrit sem venjulega er sett upp við hlið LEMP staflans er PhpMyAdmin – er PHP veftól til að stjórna MySQL/MariaDB gagnagrunnsþjóni úr vafra.

Ef þú ert að leita að LAMP uppsetningu fyrir Ubuntu 20.04, þá ættir þú að lesa LAMP uppsetningarleiðbeiningar okkar um Ubuntu 20.04.

  1. Ubuntu 20.04 uppsetningarleiðbeiningar

Í þessari grein muntu læra hvernig á að setja upp og stilla LEMP stafla með PhpMyAdmin á Ubuntu 20.04 netþjóni.

Skref 1: Uppsetning Nginx á Ubuntu 20.04

1. Nginx er hraður nútíma vefþjónn hannaður til að þjóna mörgum samhliða tengingum án þess að neyta of margra netþjónaauðlinda. Þess vegna er það oft ákjósanlegur kostur í fyrirtækjaumhverfi.

NGINX er einnig almennt notað sem álagsjafnari og skyndiminni á vefefni. Það styður sýndarþjóna sem byggir á nafni og IP (sambærilegt við sýndargestgjafa í Apache).

Þú getur sett upp Nginx á Ubuntu 20.04 skjáborðinu þínu eða miðlara með því að keyra eftirfarandi skipun.

$ sudo apt update
$ sudo apt install nginx

Nginx stillingarskrárnar eru geymdar undir /etc/nginx skránni og aðal stillingarskrá hennar er /etc/nginx/nginx.conf. Mikilvægt er að sjálfgefna skjalarót þess til að geyma vefskrárnar þínar er /usr/share/nginx/html/. En þú getur notað staðlaða /var/www/html sem ætti að stilla í stillingarskrá vefsíðu þinnar eða forrits fyrir netþjónsblokk.

2. Uppsetningarforritið fyrir Ubuntu pakka kveikir á systemd til að ræsa Nginx þjónustuna og gera henni kleift að ræsast sjálfkrafa í hvert skipti sem þjónninn er endurræstur. Notaðu eftirfarandi systemctl skipanir til að staðfesta að þjónustan sé í gangi og sé virkjuð.

$ sudo systemctl status nginx 
$ sudo systemctl is-enabled nginx

3. Nú er kominn tími til að athuga hvort Nginx uppsetningin hafi heppnast með því að hringja á Nginx síðuna í gegnum vafra með því að nota IP tölu netþjónsins.

http://SERVER_IP

Ef þú veist ekki IP tölu netþjónsins þíns geturðu fundið IP skipunina eins og sýnt er.

$ ip addr show

NGINX sjálfgefna vefsíðan ætti að hlaðast eins og sýnt er á eftirfarandi skjámynd, sem staðfestir rétta uppsetningu og notkun.

Skref 2: Uppsetning MariaDB gagnagrunns á Ubuntu 20.04

4. MariaDB er tiltölulega nýtt tengslagagnagrunnsstjórnunarkerfi sem var hannað sem samfélagsgafli MySQL eftir að Oracle var keypt.

Uppsetning MariaDB er einföld og hægt er að hefja hana með skipun sem:

$ sudo apt install mariadb-server mariadb-client

5. MariaDB þjónustan er líka sjálfkrafa ræst og virkjuð til að byrja alltaf við ræsingu kerfisins og þú getur staðfest þetta með eftirfarandi skipunum.

$ sudo systemctl status mariadb
$ sudo systemctl is-enabled mariadb

6. Ef þú viljir bæta MariaDB öryggið geturðu keyrt mysql_secure_installation skipunina, sem mun veita þér grunn en samt mikilvæga valkosti til að stilla:

$ sudo mysql_secure_installation

Veldu síðan möguleikann á að stilla lykilorð notanda rótargagnagrunnsins (eða stjórnanda) og fylgdu leiðbeiningunum og lestu spurningarnar vandlega. Til að tryggja gagnagrunnsþjóninn þinn skaltu svara spurningunum eins og sýnt er á skjámyndinni.

  • Sláðu inn núverandi lykilorð fyrir rót (sláðu inn fyrir ekkert): Sláðu inn
  • Viltu stilla rótarlykilorð? [Y/n] y
  • Fjarlægja nafnlausa notendur? [Y/n] y
  • Viltu leyfa rótarinnskráningu fjarstýrt? [Y/n] y
  • Fjarlægja prófunargagnagrunn og aðgang að honum? [Y/n] y
  • Endurhlaða forréttindatöflur núna? [Y/n] y

7. Til að búa til, stjórna og framkvæma gagnagrunnsaðgerðir þarftu að nota mysql skel skipunina með -u fánanum til að tilgreina notandanafn gagnagrunnsins og -p til að gefa upp lykilorð notandans .

Til að tengjast sem rótnotandi, notaðu sudo skipunina (jafnvel án -p fánans) annars færðu villuna sem er auðkennd á eftirfarandi skjámynd.

$ mysql -u root -p
$ sudo mysql -u root

Skref 3: Uppsetning PHP í Ubuntu 20.04

8. PHP er vinsælt opið, sveigjanlegt og kraftmikið forskriftarmál til að byggja upp vefsíður og vefforrit. Það styður margs konar forritunartækni. Mikilvægt er að PHP samfélagið er stórt og fjölbreytt, samsett úr óteljandi bókasöfnum, ramma og öðrum gagnlegum hlutum.

NGINX notar FPM (FastCGI Process Manager) eða PHP-FPM, til að vinna úr PHP forskriftum. PHP-FPM er víða notuð önnur PHP FastCGI útfærsla sem er með mörgum viðbótareiginleikum og hún er notuð til að knýja vefsvæði/vefforrit með mikla umferð.

Til að setja upp PHP og PHP-FPM skaltu keyra eftirfarandi skipun sem mun einnig setja upp nokkra nauðsynlega viðbótarpakka.

$ sudo apt install php php-mysql php-fpm

Þar sem PHP 7.4 er sjálfgefin útgáfa af PHP í Ubuntu 20.04 eru PHP stillingarskrárnar staðsettar í /etc/php/7.4/ og PHP-FPM stillingarskrárnar eru geymdar undir /etc/php/7.4/fpm.

9. Næst skaltu athuga hvort php7.4-fpm þjónustan sé í gangi og hvort hún sé virkjuð með eftirfarandi skipun.

$ sudo systemctl status php7.4-fpm
$ sudo systemctl is-enabled php7.4-fpm

Skref 4: Stilla Nginx til að vinna með PHP-FPM

10. Nú þarftu að stilla NGINX fyrir proxy biðlarabeiðnir í PHP-FPM, sem sjálfgefið er stillt til að hlusta á UNIX fals eins og skilgreint er af hlustunarbreytunni í /etc/php/7.4/fpm/pool.d/www .conf sjálfgefin laug stillingarskrá.

$ sudo vi /etc/php/7.4/fpm/pool.d/www.conf 

11. Í sjálfgefna stillingarskrá miðlarablokkar (/etc/nginx/sites-available/default) skaltu afskrifa staðsetningartilskipunina til að vinna úr PHP beiðnum þannig að hún líti út eins og sú sem sýnd er á eftirfarandi skjámynd.

$ sudo vi /etc/nginx/sites-available/default

Vistaðu skrána og hættu.

12. Prófaðu síðan setningafræði NGINX stillingar fyrir réttmæti. Ef það er í lagi skaltu endurræsa Nginx þjónustuna til að beita nýju breytingunum.

$ sudo nginx -t
$ sudo systemctl restart nginx

13. Prófaðu nú hvort NGINX geti unnið í tengslum við PHP-FPM til að vinna úr PHP beiðnum. Búðu til einfalda info.php síðu undir rótarskrá skjalsins.

$ echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php

14. Farðu í vafranum þínum með því að nota eftirfarandi heimilisfang. PHP stillingarsíðan ætti að hlaðast og sýna eins og sýnt er á eftirfarandi skjámynd.

http://SERVER_IP/info.php

Skref 5: Uppsetning PhpMyAdmin í Ubuntu 20.04

15. PhpMyAdmin er ókeypis og opinn vef-undirstaða PHP forrit sem er sérstaklega búið til til að stjórna MySQL/MariaDB gagnagrunnsþjónum í gegnum vafra. Það býður upp á leiðandi grafískt viðmót og styður fjölbreytt úrval algengra eiginleika fyrir gagnagrunnsstjórnunarverkefni.

$ sudo apt install phpmyadmin

16. Við uppsetningu pakkans verður þú beðinn um að stilla nokkra þætti PhpMyAdmin pakkans. Í fyrsta lagi verður beðið um að velja sjálfgefna vefþjóninn til að keyra hann. Ýttu á Esc vegna þess að NGINX er ekki á listanum sem gefinn er upp.

17. Næst þarf PhpMyAdmin gagnagrunn til að vinna með. Í þessari pakkastillingarbeiðni skaltu velja til að stilla gagnagrunn fyrir PhpMyAdmin með dbconfig-common pakkanum.

18. Í næstu kvaðningu þarftu að gefa upp lykilorð fyrir PhpMyAdmin til að skrá þig í MariaDB gagnagrunninn. Sláðu inn öruggt lykilorð og smelltu á Enter.

Skref 6: Stilla NGINX til að þjóna PhpMyAdmin síðu

19. Til að gera NGINX kleift að þjóna PhpMyAdmin síðuna sem staðsett er á /usr/share/phpmyadmin, búðu til tákntengil fyrir þessa möppu undir skjalrótinni, stilltu síðan réttar heimildir og eignarhald á PHPMyAdmin möppunni sem hér segir.

$ sudo ln -s  /usr/share/phpmyadmin /var/www/html/phpmyadmin
$ sudo chmod 775 -R /usr/share/phpmyadmin/
$ sudo chown root:www-data -R /usr/share/phpmyadmin/

20. Að auki, vertu viss um að vísitölutilskipunin í sjálfgefna miðlarablokkstillingunni (/etc/nginx/sites-available/default) skráin innihaldi index.php eins og sýnt er á eftirfarandi skjámynd.

21. Næst skaltu endurræsa Nginx þjónustuna aftur til að beita ofangreindum breytingum.

$ sudo systemctl restart nginx

22. Opnaðu nú PhpMyAdmin síðuna úr vafra með eftirfarandi heimilisfangi.

http://SERVER_IP/phpmyadmin

Á innskráningarsíðunni skaltu auðkenna með PHPMyAdmin notandanafninu og lykilorðinu. Mundu að innskráning ytra rótnotanda er óvirk nema þú sért að opna PHPMyAdmin á localhost þar sem MariaDB gagnagrunnurinn er settur upp, rótaraðgangurinn mun ekki virka.

Síðast en ekki síst skaltu tryggja PhpMyAdmin uppsetninguna þína með því að nota handbókina okkar: 4 gagnleg ráð til að tryggja PhpMyAdmin vefviðmót.

Niðurstaða

LEMP uppsetningunni þinni er nú lokið og þú getur byrjað að byggja vefforritin þín eða einfaldlega spilað með Nginx og MariaDB þjónustunum sem þú varst að setja upp. Þetta er mikið notað og það er mjög mælt með því fyrir kerfisstjóra að öðlast meiri þekkingu á þeim.