Kuinka LEMP asennetaan Debian 10 Server -palvelimeen
“LEMP” -pino on sekoitus avoimen lähdekoodin ohjelmistoja, jotka asennetaan tyypillisesti Linux-palvelimelle dynaamisten sovellusten käyttöönottoa varten. Tämä termi on lyhenne, joka edustaa Linux-käyttöjärjestelmää, Nginx-verkkopalvelinta, MariaDB-tietokantaa ja PHP-ohjelmointia.
Vaikka tämä “LEMP” -pino sisältää yleensä MySQL: n tietokannan hallintajärjestelmänä, jotkut Linux-jakelut, kuten Debian, käyttävät MariaDB: tä MySQL: n drop-in-korvikkeena.
- Kuinka asentaa Debian 10 (Buster) -minimaalipalvelin
Tässä artikkelissa kerromme sinulle, kuinka LEMP-ympäristö asennetaan ja asennetaan Debian 10 -palvelimelle käyttämällä MariaDB: tä tietokannan hallinta-alustana.
Nginx-verkkopalvelimen asentaminen Debian 10: een
Nginx on avoimen lähdekoodin ja alustojen välinen, kevyt mutta tehokas ja helppo konfiguroida HTTP- ja käänteinen välityspalvelin, postin välityspalvelin ja yleinen TCP/UDP-välityspalvelin, modulaarisella arkkitehtuurilla.
Jotkut sen perusominaisuuksista ovat staattisten ja hakemistotiedostojen tarjoaminen; nopeutettu tuki FastCGI-, uwsgi-, SCGI- ja Memcached-palvelinten välimuistilla, kuormituksen tasapainottaminen ja vikasietoisuus, SSL- ja TLS SNI -tuki, HTTP/2 -tuki painotetulla ja riippuvuuteen perustuvalla priorisoinnilla.
Asenna Nginx-paketti käyttämällä Debianin apt-paketinhallintaa kuvan osoittamalla tavalla.
# apt update # apt install nginx
Kun Nginx-asennus on valmis, asennusohjelma aktivoi systemd: n aloittaakseen Nginx-palvelun toistaiseksi ja salliakseen sen käynnistyvän automaattisesti järjestelmän käynnistyksen yhteydessä. Voit tarkistaa Nginxin tilan seuraavalla systemctl-komennolla.
# systemctl status nginx
Voit myös käyttää seuraavia tärkeitä komentoja Nginx-palvelun kokoonpanon käynnistämiseen, uudelleenkäynnistykseen, pysäyttämiseen ja lataamiseen uudelleen systemd: ssä.
# systemctl start nginx # systemctl restart nginx # systemctl stop nginx # systemctl reload nginx # systemctl status nginx
Seuraavaksi, jos UFW-palomuuri on käynnissä (se on yleensä oletusarvoisesti poissa käytöstä), sinun on avattava portit 80 (HTTP) ja 443 (HTTPS), jotta Nginxille voidaan sallia saapuva liikenne.
# ufw allow 80 # ufw allow 443 # ufw status
Tässä vaiheessa sinun on testattava, onko Nginx asennettu oikein, onko se käynnissä ja pystyykö palvelemaan verkkosivuja. Voit tehdä sen avaamalla verkkoselaimen ja osoittamalla sen seuraavaan URL-osoitteeseen, jotta pääset Nginx Debianin oletussivulle.
http://SERVER_IP/ OR http://localhost/
MariaDB: n asentaminen Debian 10: een
Seuraavaksi sinun on asennettava tietokantajärjestelmä, jotta voit tallentaa ja hallita verkkosivustosi tai verkkosovelluksesi tietoja. Debian 10 tukee MariaDB: tä oletusarvoisesti MySQL: n korvaajana.
Asenna MariaDB suorittamalla seuraava komento.
# apt install mariadb-server
Tarkista seuraavaksi MariaDB-palvelun tila, koska systemd käynnistää sen automaattisesti ja käynnistyy järjestelmän käynnistyksen yhteydessä varmistaaksesi, että se on käynnissä, käytä seuraavaa komentoa.
# systemctl status mariadb
Voit hallita (käynnistää, käynnistää uudelleen, pysäyttää ja ladata uudelleen) MariaDB-palvelua systemd: ssä käyttämällä seuraavaa komentoa.
# systemctl start mariadb # systemctl restart mariadb # systemctl stop mariadb # systemctl reload mariadb
Seuraavaksi MariaDB-asennus on oletusarvoisesti epävarma. Sinun on suoritettava komentosarja, joka toimitetaan paketin mukana, jotta voit parantaa tietokannan turvallisuutta.
# mysql_secure_installation
Kun komentosarja on suoritettu, se vie sinut läpi seuraavien kysymysten muokkaamaan MariaDB-asennuksen oletusasetuksia seuraavassa kuvakaappauksessa.
PHP-FPM: n (Fast Process Manager) asentaminen Debian 10: een
Toisin kuin Apache ja muut verkkopalvelimet, Nginx ei tarjoa natiivia tukea PHP: lle, koska se käyttää PHP-FPM: ää PHP-sivujen pyyntöjen käsittelemiseen. PHP-FPM on vaihtoehtoinen FastCGI-demoni PHP: lle, jonka avulla verkkosivusto pystyy käsittelemään suuria kuormia käyttämällä työntekijöiden prosesseja pyyntöjen käsittelyssä.
Asenna PHP-FPM -versio 7.3 ja PHP-moduuli kommunikoimaan MariaDB/MySQL-tietokantajärjestelmän kanssa suorittamalla seuraava komento.
# apt install php-fpm php-mysqli
Kun PHP-FPM on asennettu, asennusohjelma aktivoi systemd: n aloittaakseen PHP-FPM -palvelun toistaiseksi ja salliakseen sen käynnistyvän automaattisesti järjestelmän käynnistyksen yhteydessä. Anna seuraava komento tarkistaaksesi, onko se käynnissä.
# systemctl status php-fpm
Voit myös käynnistää, käynnistää uudelleen pysäyttämisen ja ladata PHP-FPM-palvelun kokoonpanon uudelleen systemd-järjestelmässä seuraavasti.
# systemctl start php-fpm # systemctl restart php-fpm # systemctl stop php-fpm # systemctl reload php-fpm # systemctl status php-fpm
Seuraavaksi sinun on suojattava PHP-FPM tekemällä joitain muutoksia asetustiedostoon /etc/php/7.3/fpm/php.ini seuraavasti.
# vi /etc/php/7.3/fpm/php.ini
Etsi komento ; cgi.fix_pathinfo = 1
poistamalla se poistamalla alusta merkki ;
, asettamalla sen arvoksi 0
. Tämä estää Nginxiä sallimasta muiden kuin PHP-tiedostojen suorittamista PHP: nä.
cgi.fix_pathinfo=0
Oletusarvoisesti PHP-FPM on määritetty kuuntelemaan UNIX-soxket, /run/php/php7.3-fpm.sock, kuten määritetään /etc/php/7.3/fpm/pool.d/www.conf -asetustiedostossa. Sinun on määritettävä kaikki palvelinlohkot (tai virtuaaliset isännät) käyttämään tätä liitäntää, jos heidän on tarkoitus käsitellä ja palvella PHP-sivuja.
Voit käyttää Nginxin oletuspalvelinlohkon määritystiedostoa/etc/nginx/sites-available/default sen testaamiseen.
# vi /etc/nginx/sites-available/default
Etsi seuraava osio ja poista komento siirtääksesi PHP-komentosarjat FastCGI-palvelimelle kuvakaappauksen mukaisesti.
location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php7.3-fpm.sock; }
Testaa seuraavaksi, onko Nginx-kokoonpanorakenne OK, käyttämällä seuraavaa komentoa.
# nginx -t
Jos Nginx-kokoonpano on kunnossa, tee äskettäin tehdyt muutokset käynnistämällä php7.3-fpm- ja nginx-palvelut uudelleen seuraavasti.
# systemctl restart php7.2-fpm # systemctl restart nginx
PHP-FPM-prosessoinnin testaaminen Nginxillä
Kun olet määrittänyt PHP-FPM: n ja Nginxin toimimaan yhdessä, sinun on testattava, pystyvätkö kaksi palvelua käsittelemään ja palvelemaan PHP-sivuja asiakkaille. Voit tehdä sen luomalla yksinkertaisen PHP-komentosarjan Web DocumentRoot -sovellukseen seuraavasti.
# echo “<?php phpinfo(); ?>” | tee /var/www/html/info.php
Avaa lopuksi selain ja kirjoita seuraava osoite, niin näet järjestelmän PHP-kokoonpanot phpinfo()
-toiminnon luomalla tavalla.
http://SERVER_IP/info.php OR http://localhost/info.php
Tässä artikkelissa olemme osoittaneet, kuinka LEMP-pino asennetaan ja määritetään Debian 10: ssä. Jos sinulla on kysyttävää tai palautetta, ota yhteyttä ja ilmoita siitä meille alla olevan kommenttilomakkeen avulla.