Weboldal keresés

A LEMP (Linux, Nginx, MariaDB, PHP-FPM) telepítése a Debian 9 Stretch rendszeren


Mivel a Debian a világ webszervereinek nagy százalékát támogatja, ebben a cikkben elmagyarázzuk, hogyan kell telepíteni a LEMP (Linux + Nginx) + MariaDB + PHP-FPM) verem a Debian 9 Stretch rendszeren a LAMP alternatívájaként (ezt az útmutatót használhatja telepítse a LAMP-ot Debian 9-re).

Ezenkívül megmutatjuk, hogyan kell elvégezni egy minimális Nginx/PHP-FPM konfigurációt, hogy még az új rendszergazdák is teljesen új webszervereket állíthassanak be dinamikus oldalak beállításához.

Ehhez felhasználjuk a disztribúció hivatalos tárolóinak legutóbbi frissítéseit. Feltételezhető, hogy a Debian 9-et csupasz fémre, virtuális gépre vagy VPS-re telepítette, vagy Jessie-ről frissített.

A LEMP telepítése a Debian 9 Stretch rendszerben

Kíváncsi lehet, miért említettük a PHP-FPM-et a PHP helyett a LEMP verem részeként. Más webszerverekkel ellentétben az Nginx nem nyújt natív támogatást a PHP számára.

Emiatt a PHP-FPM (Fast Process Manager) a PHP-oldalakra vonatkozó kérések kezelésére szolgál. A PHP-FPM-ről többet megtudhat a PHP hivatalos webhelyén.

A php7.0-fpm Debian-tárolókban megadott alapértelmezett verzió. Amint azt a csomag neve alapján valószínűleg sejtheti, ez a verzió még a PHP 7 kódot tartalmazó oldalakra irányuló kéréseket is képes kezelni.

MEGJEGYZÉS: Ha az Apache-t korábban telepítették ugyanabba a dobozba, a folytatás előtt győződjön meg arról, hogy le van állítva és letiltva.

Ezzel együtt telepítsük a LEMP verem összetevőit az alábbiak szerint:

aptitude update 
aptitude install nginx mariadb-server mariadb-client php-mysqli php7.0-fpm

Ha a telepítés befejeződött, először győződjön meg arról, hogy az Nginx és a PHP-FPM fut, és engedélyezve van a rendszerindításkor:

systemctl status nginx php7.0-fpm

Ha azt jelzi, hogy az egyik vagy mindkét szolgáltatás nem fut, tegye meg.

systemctl start nginx php7.0-fpm
systemctl enable nginx php7.0-fpm

Mint minden MariaDB vagy MySQL telepítésnél, fontos a mysql_secure_installation futtatása a minimális biztonsági beállítások elvégzéséhez és a jelszó beállításához. az adatbázis gyökérfiókját.

mysql_secure_installation

Ha nem tudja, hogyan kell ezt megtenni, tekintse meg a MariaDB 10 telepítése Debian és Ubuntu rendszeren című rész 4. lépését.

Az Nginx beállítása PHP-FPM használatára a Debian 9 rendszeren

Az Nginx fő konfigurációs fájlja /etc/nginx/sites-available/default, ahol a következő változtatásokat kell végrehajtanunk a szerverblokkon belül:

  • Győződjön meg arról, hogy a PHP-kéréseket kezelő location blokk engedélyezve van, kivéve azt, ahol a fastcgi_pass direktíva a loopback hálózati kártyára mutat.
  • Adja hozzá az index.php elemet az index direktíva mögé, hogy jelezze, ha megtalálja, alapértelmezés szerint az index.html vagy más fájlok előtt kell kiszolgálnia.
  • Adja hozzá a server_name direktívát, amely a szerver IP-címére vagy gazdagépnevére mutat. Ez esetünkben 192.168.0.35 lesz.
  • Ezenkívül győződjön meg arról, hogy a root direktíva arra a helyre mutat, ahol a .php fájlokat tárolni fogja (alapértelmezés szerint /var/www/html) .

Ha elkészült, a következő paranccsal tesztelheti a konfigurációs fájlt hibákra.

nginx -t 

Ezen a ponton az /etc/nginx/sites-available/default a következőképpen néz ki, ahol a konfigurációra utaló számok a fenti listát képviselik:

grep -Ev '#' /etc/nginx/sites-available/default

Az Nginx és a PHP-FPM tesztelése Debian 9 rendszeren

Annak érdekében, hogy az Nginxet használjuk webszerverként, hozzunk létre egy info.php nevű fájlt a /var/www/html fájlban a következő tartalmat:

<?php
	phpinfo();
?>

Ezután lépjen a http://192.168.0.35/info.php oldalra, és ellenőrizze az oldal tetejét, ahol ezt kell látnia:

Végül mutassuk meg böngészőnket a booksandauthors.php fájlra, amelyet az Install LAMP (Linux, Apache, MariaDB vagy MySQL és PHP) Stackben hoztunk létre a Debian 9-en.

Amint az a következő képen látható, ezt a fájlt most az Nginx szolgálja ki:

MEGJEGYZÉS: Ha azt veszi észre, hogy az Nginx a .php fájlokat letöltésként szolgálja ki ahelyett, hogy végrehajtaná őket, törölje a böngésző gyorsítótárát, vagy próbáljon ki egy másik böngészőt. . Különösen, ha Chrome-ot használ, érdemes lehet inkognitó módban tesztelni.

Összegzés

Ebben a cikkben elmagyaráztuk, hogyan telepíthető és konfigurálható az Nginx dinamikus .php oldalak kiszolgálására. Fontos megjegyezni, hogy a kezdeti beállítás után vannak olyan beállítások, amelyeket figyelembe kell venni a webszerver biztonsága érdekében.

Az alapvető összefoglalót megtalálhatja a The Ultimate Guide to Secure, Harden and Improve of Performance of Nginx Web Server című dokumentumban.

Ha virtuális tárhelyet keres az Nginx-en, olvassa el a Név- és IP-alapú virtuális gazdagépek beállítása az NGINX-en című részt.

Mint mindig, ne habozzon jelezni nekünk, ha kérdése vagy megjegyzése van ezzel a cikkel kapcsolatban.