Kako namestiti LEMP (Linux, Nginx, MariaDB, PHP-FPM) na Debian 9 Stretch


Ker Debian poganja velik odstotek spletnih strežnikov po vsem svetu, bomo v tem članku razložili, kako namestiti sklad LEMP (Linux + Nginx + MariaDB + PHP-FPM) na Debian 9 Stretch kot alternativo LAMP (uporabite ta priročnik namestiti LAMP na Debian 9).

Poleg tega bomo pokazali, kako izvesti minimalno konfiguracijo Nginx/PHP-FPM, tako da lahko tudi novi sistemski skrbniki nastavijo povsem nove spletne strežnike za nastavitev dinamičnih strani.

V ta namen bomo uporabili nedavne posodobitve uradnih skladišč distribucije. Predvideva se, da ste nadgradili Jessie.

Namestitev LEMP v Debian 9 Stretch

Morda se sprašujete, zakaj smo kot sklop LEMP namesto PHP omenili PHP-FPM. V nasprotju z drugimi spletnimi strežniki Nginx ne ponuja izvorne podpore za PHP.

Iz tega razloga se PHP-FPM (Fast Process Manager) uporablja za obdelavo zahtev za strani PHP. Več o PHP-FPM lahko izveste na uradni strani PHP.

Privzeta različica v skladiščih Debian php7.0-fpm. Kot verjetno lahko ugibate glede na ime paketa, lahko ta različica obravnava celo zahteve do strani, vključno s kodo PHP 7.

OPOMBA: Če je bil Apache že nameščen v istem polju, se pred nadaljevanjem prepričajte, da je ustavljen in onemogočen.

S tem pa namestimo komponente sklada LEMP, kot sledi:

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

Ko je namestitev končana, najprej preverimo, ali sta Nginx in PHP-FPM zagnana in omogočena za zagon:

# systemctl status nginx php7.0-fpm

Če kaže, da se ena ali obe storitvi ne izvajata, to storite.

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

Tako kot pri vsaki namestitvi MariaDB ali MySQL, je pomembno, da zaženete mysql_secure_installation, da izvedete minimalno varnostno konfiguracijo in nastavite geslo za korenski račun baze podatkov.

# mysql_secure_installation

Če ne veste, kako to storiti, se lahko obrnete na korak #4 v Kako namestiti MariaDB 10 na Debian in Ubuntu.

Konfiguriranje Nginxa za uporabo PHP-FPM v Debianu 9

Glavna konfiguracijska datoteka Nginx je/etc/nginx/sites-available/default, kjer bomo morali v bloku strežnika narediti naslednje spremembe:

  • Prepričajte se, da je omogočen lokacijski blok, ki obravnava zahteve PHP, z izjemo tistega, kjer direktiva fastcgi_pass kaže na povratno omrežno kartico.
  • Za direktivo indeksa dodajte index.php, ki označuje, da naj bo privzeto vročen pred index.html ali drugimi datotekami.
  • Dodajte direktivo server_name, ki kaže na naslov IP ali ime gostitelja vašega strežnika. V našem primeru bo to 192.168.0.35.
  • Poleg tega se prepričajte, da korenska direktiva kaže na mesto, kjer bodo shranjene vaše datoteke .php (privzeto/var/www/html).

Ko končate, lahko z naslednjim ukazom preizkusite napake v konfiguracijski datoteki.

# nginx -t 

Na tej točki mora biti vaš/etc/nginx/sites-available/default videti tako, kjer številke, ki se nanašajo na konfiguracijo, predstavljajo zgornji seznam:

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

Testiranje Nginxa in PHP-FPM na Debianu 9

Da se prepričamo, da zdaj uporabljamo Nginx kot našega spletnega strežnika, ustvarimo datoteko z imenom info.php znotraj/var/www/html z naslednjo vsebino:

<?php
	phpinfo();
?>

Nato pojdite na http://192.168.0.35/info.php in preverite vrh strani, kjer bi to morali videti:

Za konec pa še naš brskalnik usmerimo na datoteko booksandauthors.php, ki smo jo ustvarili v paketu Install LAMP (Linux, Apache, MariaDB ali MySQL in PHP) v Debianu 9.

Kot lahko vidite na naslednji sliki, to datoteko zdaj streže Nginx:

OPOMBA: Če opazite, da Nginx datoteke .php streže kot prenose, namesto da bi jih izvedel, počistite predpomnilnik brskalnika ali poskusite z drugim brskalnikom. Če uporabljate Chrome, boste morda želeli preskusiti v načinu brez beleženja zgodovine.

V tem članku smo razložili, kako namestiti in konfigurirati Nginx za prikazovanje dinamičnih strani .php . Pomembno je omeniti, da po tej začetni nastavitvi obstajajo nastavitve, ki jih je treba upoštevati za zaščito spletnega strežnika.

Osnovni povzetek boste našli v Ultimate Guide za zaščito, utrjevanje in izboljšanje delovanja spletnega strežnika Nginx.

Če iščete navidezno gostovanje na Nginxu, preberite Kako namestiti virtualne gostitelje na osnovi imen in IP na NGINX.

Kot vedno, ne oklevajte in nam sporočite, če imate vprašanja ali pripombe o tem članku.