Hvernig á að setja upp LEMP á Debian 10 Server


„LEMP“ stafla er blanda af opnum hugbúnaði sem er venjulega settur upp á Linux netþjóni til að dreifa kraftmiklum forritum. Þetta hugtak er skammstöfun sem táknar Linux stýrikerfið, Nginx vefþjón, MariaDB gagnagrunn og PHP forritun.

Þrátt fyrir að þessi „LEMP“ stafla innihaldi venjulega MySQL sem gagnagrunnsstjórnunarkerfi, sumar Linux dreifingar eins og Debian - nota MariaDB sem drop-in staðgengill fyrir MySQL.

  1. Hvernig á að setja upp Debian 10 (Buster) lágmarksþjón

Í þessari grein munum við útskýra fyrir þér hvernig á að setja upp og setja upp LEMP umhverfi á Debian 10 netþjóni, með því að nota MariaDB sem gagnagrunnsstjórnunarvettvang.

Að setja upp Nginx vefþjón á Debian 10

Nginx er opinn uppspretta og þvert á vettvang, léttur en samt öflugur og auðvelt að stilla HTTP og öfugan umboðsþjón, póstþjónn og almennan TCP/UDP umboðsþjón, með mát arkitektúr.

Sumir af grunneiginleikum þess eru meðal annars að þjóna truflanir og vísitöluskrár; hraðari stuðningur með skyndiminni á FastCGI, uwsgi, SCGI og Memcached netþjónum, álagsjafnvægi og bilanaþol, SSL og TLS SNI stuðning, stuðningur við HTTP/2 með veginni forgangsröðun sem byggir á ósjálfstæði.

Til að setja upp Nginx pakkann skaltu nota viðeigandi pakkastjóra Debian eins og sýnt er.

# apt update 
# apt install nginx 

Þegar Nginx uppsetningunni er lokið mun uppsetningarforritið virkja systemd til að ræsa Nginx þjónustuna í bili og gera henni kleift að byrja sjálfkrafa við ræsingu kerfisins. Þú getur athugað stöðu Nginx með því að nota eftirfarandi systemctl skipun.

# systemctl status nginx

Þú getur líka notað eftirfarandi mikilvægar skipanir til að ræsa, endurræsa, stöðva og endurhlaða stillingar Nginx þjónustunnar undir systemd.

# systemctl start nginx
# systemctl restart nginx 
# systemctl stop nginx
# systemctl reload nginx 
# systemctl status nginx 

Næst, ef þú ert með UFW eldvegginn í gangi (hann er venjulega óvirkur sjálfgefið), þarftu að opna port 80 (HTTP) og 443 (HTTPS) til að leyfa komandi umferð á Nginx.

# ufw allow 80
# ufw allow 443
# ufw status

Á þessum tímapunkti þarftu að prófa hvort Nginx sé rétt uppsett, hvort það sé í gangi og geti þjónað vefsíðum. Til að gera það skaltu opna vafra og benda honum á eftirfarandi vefslóð til að fá aðgang að Nginx Debian Default vefsíðu.

http://SERVER_IP/
OR
http://localhost/

Að setja upp MariaDB á Debian 10

Næst þarftu að setja upp gagnagrunnskerfi til að geta geymt og stjórnað gögnum fyrir vefsíðuna þína eða vefforritið. Debian 10 styður MariaDB sjálfgefið, sem drop-in staðgengill fyrir MySQL.

Til að setja upp MariaDB skaltu keyra eftirfarandi skipun.

# apt install mariadb-server

Næst skaltu athuga MariaDB þjónustustöðuna þar sem það er sjálfkrafa ræst af systemd og gert kleift að byrja við ræsingu kerfisins, til að tryggja að það sé í gangi, notaðu eftirfarandi skipun.

# systemctl status mariadb

Til að stjórna (ræsa, endurræsa, stöðva og endurhlaða) MariaDB þjónustuna undir systemd geturðu notað eftirfarandi skipun.

# systemctl start mariadb
# systemctl restart mariadb
# systemctl stop mariadb
# systemctl reload mariadb

Næst verður MariaDB dreifingin sjálfgefið óörugg. Þú þarft að keyra skeljaforskrift sem fylgir pakkanum til að gera þér kleift að bæta gagnagrunnsöryggið.

# mysql_secure_installation

Eftir að hafa keyrt handritið mun það fara með þig í gegnum röð eftirfarandi spurninga til að breyta sjálfgefnum stillingum MariaDB uppsetningar eins og sýnt er á eftirfarandi skjámynd.

Uppsetning PHP-FPM (Fast Process Manager) á Debian 10

Ólíkt Apache og öðrum vefþjónum veitir Nginx ekki innbyggðan stuðning fyrir PHP, þar sem það notar PHP-FPM til að meðhöndla beiðnir um PHP síður. PHP-FPM er annar FastCGI púki fyrir PHP sem gerir vefsíðu kleift að takast á við mikið álag, með því að nota vinnuferli til að meðhöndla beiðnir.

Til að setja upp PHP-FPM útgáfu 7.3 og PHP mát til að eiga samskipti við MariaDB/MySQL gagnagrunnskerfi skaltu keyra eftirfarandi skipun.

# apt install php-fpm php-mysqli

Eftir að PHP-FPM hefur verið sett upp mun uppsetningarforritið virkja systemd til að ræsa PHP-FPM þjónustuna í bili og gera henni kleift að ræsast sjálfkrafa við ræsingu kerfisins. Til að athuga hvort það sé í gangi skaltu gefa út eftirfarandi skipun.

# systemctl status php-fpm

Þú getur líka byrjað, endurræsa stöðva og endurhlaða stillingar PHP-FPM þjónustunnar undir systemd, eins og hér segir.

# systemctl start php-fpm
# systemctl restart php-fpm
# systemctl stop php-fpm
# systemctl reload php-fpm
# systemctl status php-fpm

Næst þarftu að tryggja PHP-FPM með því að gera nokkrar breytingar á stillingarskránni /etc/php/7.3/fpm/php.ini sem hér segir.

# vi /etc/php/7.3/fpm/php.ini

Leitaðu að ;cgi.fix_pathinfo=1 afskrifaðu það með því að fjarlægja ; stafinn í byrjun, stilltu gildi þess á 0. Þetta kemur í veg fyrir að Nginx leyfi að skrár sem ekki eru PHP séu keyrðar sem PHP.

cgi.fix_pathinfo=0

Sjálfgefið er að PHP-FPM er stillt til að hlusta á UNIX soxket, /run/php/php7.3-fpm.sock eins og skilgreint er í /etc/php/7.3/fpm/pool.d/www.conf stillingarskránni. Þú verður að stilla alla netþjónablokkina þína (eða sýndargestgjafa) til að nota þessa fals ef þeir eiga að vinna og þjóna PHP síðum.

Þú getur notað Nginx sjálfgefna miðlarablokk stillingarskrána /etc/nginx/sites-available/default til að prófa hana.

# vi /etc/nginx/sites-available/default 

Leitaðu að eftirfarandi hluta og hafðu athugasemd við hann til að senda PHP forskriftir til FastCGI netþjóns eins og sýnt er á skjámyndinni.

location ~ \.php$ {
            include snippets/fastcgi-php.conf;
            fastcgi_pass unix:/run/php/php7.3-fpm.sock;
}

Næst skaltu prófa hvort Nginx stillingaruppbyggingin sé í lagi með því að nota eftirfarandi skipun.

# nginx -t

Ef Nginx stillingin er í lagi, til að nota nýlega gerðar breytingar, endurræstu php7.3-fpm og nginx þjónusturnar sem hér segir.

# systemctl restart php7.2-fpm
# systemctl restart nginx

Prófar PHP-FPM vinnslu á Nginx

Eftir að hafa stillt PHP-FPM og Nginx til að vinna saman þarftu að prófa hvort tvær þjónustur geti unnið og þjónað PHP síður til viðskiptavina. Til að gera það skaltu búa til einfalt PHP handrit í DocumentRoot vefnum þínum eins og hér segir.

# echo “<?php phpinfo(); ?>”  | tee /var/www/html/info.php

Að lokum skaltu opna vafra og slá inn eftirfarandi heimilisfang til að sjá PHP stillingarnar á kerfinu eins og þær eru búnar til með phpinfo() aðgerðinni.

http://SERVER_IP/info.php
OR
http://localhost/info.php

Í þessari grein höfum við sýnt hvernig á að setja upp og stilla LEMP stafla í Debian 10. Ef þú hefur einhverjar spurningar eða athugasemdir, vinsamlegast hafðu samband og láttu okkur vita í gegnum athugasemdareyðublaðið hér að neðan.