Kako instalirati LEMP (Linux, Nginx, MariaDB, PHP-FPM) na Debian 9 Stretch
Budući da Debian pokreće veliki postotak web servera diljem svijeta, u ovom članku ćemo objasniti kako instalirati LEMP (Linux + Nginx + MariaDB + PHP-FPM) stog na Debian 9 Stretch kao alternativu za LAMP (koristite ovaj vodič za instalirati LAMP na Debian 9).
Osim toga, pokazat ćemo kako izvršiti minimalnu Nginx/PHP-FPM konfiguraciju tako da čak i novi administratori sistema mogu postaviti potpuno nove web servere za postavljanje dinamičkih stranica.
Da bismo to učinili, iskoristit ćemo nedavna ažuriranja službenih spremišta distribucije. Pretpostavlja se da ste instalirali Debian 9 na goli metal, virtualnu mašinu ili VPS, ili ste izvršili nadogradnju sa Jessie.
Instaliranje LEMP-a u Debian 9 Stretch
Možda se pitate zašto smo spomenuli PHP-FPM umjesto PHP kao dio LEMP steka. Za razliku od drugih web servera, Nginx ne pruža izvornu podršku za PHP.
Iz tog razloga, PHP-FPM (Fast Process Manager) se koristi za obradu zahtjeva za PHP stranice. Više o PHP-FPM-u možete saznati na službenoj stranici PHP-a.
Zadana verzija dostupna u Debian repozitorijumima php7.0-fpm. Kao što verovatno možete pretpostaviti na osnovu imena paketa, ova verzija može čak da obrađuje zahteve prema stranicama uključujući PHP 7 kod.
NAPOMENA: Ako je Apache prethodno instaliran u istom polju, uvjerite se da je zaustavljen i onemogućen prije nego što nastavite.
Uz to rečeno, instalirajmo komponente LEMP steka na sljedeći način:
aptitude update
aptitude install nginx mariadb-server mariadb-client php-mysqli php7.0-fpm
Kada se instalacija završi, prvo se uvjerimo da su Nginx i PHP-FPM pokrenuti i omogućeni za pokretanje pri pokretanju:
systemctl status nginx php7.0-fpm
Ako pokazuje da jedna ili obje usluge nisu pokrenute, učinite to.
systemctl start nginx php7.0-fpm
systemctl enable nginx php7.0-fpm
Kao što je slučaj sa svakom instalacijom MariaDB ili MySQL, važno je pokrenuti mysql_secure_installation da izvršite minimalnu sigurnosnu konfiguraciju i postavite lozinku za korijenski račun baze podataka.
mysql_secure_installation
Ako ne znate kako to učiniti, možete pogledati korak #4 u Kako instalirati MariaDB 10 na Debian i Ubuntu.
Konfiguriranje Nginxa za korištenje PHP-FPM-a na Debianu 9
Nginx glavna konfiguracijska datoteka je /etc/nginx/sites-available/default, gdje ćemo morati napraviti sljedeće promjene unutar bloka servera:
- Uvjerite se da je omogućen blok location koji rukuje PHP zahtjevima, s izuzetkom onog gdje fastcgi_pass direktiva pokazuje na mrežnu karticu povratne petlje.
- Dodajte index.php nakon index direktive kako biste naznačili da, ako se pronađe, treba biti isporučen prema zadanim postavkama prije index.html ili drugih datoteka.
- Dodajte server_name direktivu koja ukazuje na IP adresu ili ime hosta vašeg servera. Ovo će biti 192.168.0.35 u našem slučaju.
- Osim toga, uvjerite se da root direktiva ukazuje na lokaciju na kojoj će vaši
.php
fajlovi biti pohranjeni (/var/www/html po defaultu) .
Kada završite, možete koristiti sljedeću naredbu da testirate konfiguracijsku datoteku na greške.
nginx -t
U ovom trenutku, vaš /etc/nginx/sites-available/default bi trebao izgledati kako slijedi gdje brojevi koji se odnose na konfiguraciju predstavljaju gornju listu:
grep -Ev '#' /etc/nginx/sites-available/default
Testiranje Nginxa i PHP-FPM-a na Debianu 9
Da bismo bili sigurni da sada koristimo Nginx kao naš web server, napravimo fajl pod nazivom info.php unutar /var/www/html sa sljedeći sadržaji:
<?php
phpinfo();
?>
Zatim idite na http://192.168.0.35/info.php i provjerite vrh stranice gdje biste trebali vidjeti ovo:
Na kraju, usmjerimo naš preglednik na datoteku booksandauthors.php koju smo kreirali u Install LAMP (Linux, Apache, MariaDB ili MySQL i PHP) stack na Debianu 9.
Kao što možete vidjeti na sljedećoj slici, ovaj fajl sada opslužuje Nginx:
NAPOMENA: Ako primijetite da Nginx služi datoteke .php
kao preuzimanja umjesto da ih izvršava, obrišite keš pretraživača ili pokušajte s drugim preglednikom . Konkretno, ako koristite Chrome, možda ćete htjeti testirati s anonimnim načinom rada.
Sažetak
U ovom članku smo objasnili kako instalirati i konfigurirati Nginx za posluživanje dinamičkih .php
stranica. Važno je napomenuti da nakon ovog početnog podešavanja postoje postavke koje treba uzeti u obzir za osiguranje web servera.
Osnovni sažetak možete pronaći u The Ultimate Guide to Secure, Harden and Improve Performance of Nginx Web Server.
Ako tražite virtuelni hosting na Nginxu, pročitajte Kako podesiti virtuelne hostove zasnovane na imenu i IP na NGINX-u.
Kao i uvijek, ne ustručavajte se javiti nam ako imate pitanja ili komentara o ovom članku.