Giunsa ang Pag-install sa LEMP (Linux, Nginx, MariaDB, PHP-FPM) sa Debian 9 Stretch


Tungod kay ang Debian nagmando sa usa ka dako nga porsyento sa mga web server sa tibuok kalibutan, niining artikuloha atong ipasabut kung unsaon pag-install ang LEMP (Linux + Nginx + MariaDB + PHP-FPM) stack sa Debian 9 Stretch isip alternatibo sa LAMP (gamita kini nga giya. aron i-install ang LAMP sa Debian 9).

Dugang pa, ipakita namon kung giunsa paghimo ang usa ka gamay nga pag-configure sa Nginx/PHP-FPM aron bisan ang mga bag-ong administrador sa sistema makahimo sa pag-set up sa bag-ong mga web server aron ma-set up ang dinamikong mga panid.

Aron mahimo kini, among gamiton ang bag-o nga mga update sa opisyal nga mga repositoryo sa pag-apod-apod. Gituohan nga nag-upgrade ka gikan kang Jessie.

Pag-instalar sa LEMP sa Debian 9 Stretch

Tingali nahibulong ka kung nganong gihisgutan namon ang PHP-FPM imbis nga PHP isip bahin sa LEMP stack. Sukwahi sa ubang mga web server, ang Nginx wala maghatag og lumad nga suporta alang sa PHP.

Tungod niana nga hinungdan, ang PHP-FPM (Fast Process Manager) gigamit sa pagdumala sa mga hangyo alang sa mga panid sa PHP. Mahibal-an nimo ang dugang bahin sa PHP-FPM sa opisyal nga site sa PHP.

Ang default nga bersyon nga gihatag sa Debian repository php7.0-fpm. Ingon nga mahimo nimong tag-an base sa ngalan sa package, kini nga bersyon mahimo pa nga magdumala sa mga hangyo sa mga panid lakip ang PHP 7 code.

PAHINUMDOM: Kung ang Apache na-install sa parehas nga kahon kaniadto, siguruha nga kini gihunong ug gi-disable sa dili pa magpadayon.

Sa ingon niana, atong i-install ang mga sangkap sa LEMP stack sama sa mosunod:

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

Kung nahuman na ang pag-install, siguruha una naton nga ang Nginx ug PHP-FPM nagdagan ug mahimo nga magsugod sa boot:

# systemctl status nginx php7.0-fpm

Kung nagpakita nga ang usa o ang duha nga mga serbisyo wala nagdagan, dayon buhata.

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

Ingon nga kini ang kaso sa matag pag-install sa MariaDB o MySQL, hinungdanon nga modagan ang mysql_secure_installation aron mahimo ang gamay nga pagsumpo sa seguridad ug itakda ang password alang sa database root account.

# mysql_secure_installation

Kung wala ka mahibal-an kung giunsa kini buhaton, mahimo nimong i-refer ang lakang #4 sa Giunsa Pag-install ang MariaDB 10 sa Debian ug Ubuntu.

Pag-configure sa Nginx sa Paggamit sa PHP-FPM sa Debian 9

Ang Nginx main configuration file mao ang /etc/nginx/sites-available/default, diin kinahanglan natong himoon ang mosunod nga mga kausaban sulod sa server block:

  • Siguruha nga ang block sa lokasyon nga nagdumala sa mga hangyo sa PHP gipagana, gawas sa usa diin ang direktiba sa fastcgi_pass nagpunting sa loopback NIC.
  • Idugang ang index.php pagkahuman sa direktiba sa indeks aron ipakita nga kung makit-an, kinahanglan nga i-alagad kini nga default sa wala pa ang index.html o uban pang mga file.
  • Idugang ang direktiba sa server_name nga nagpunting sa IP address o hostname sa imong server. Kini mahimong 192.168.0.35 sa among kaso.
  • Dugang pa, siguroha nga ang direktiba sa ugat nagpunting sa lokasyon diin ang imong .php nga mga file itago (/var/www/html sa default).

Kung nahuman ka, mahimo nimong gamiton ang mosunud nga mando aron sulayan ang file sa pag-configure alang sa mga sayup.

# nginx -t 

Niini nga punto, ang imong /etc/nginx/sites-available/default kinahanglang tan-awon sama sa mosunod diin ang mga numero nagtumong sa configuration nagrepresentar sa listahan sa ibabaw:

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

Pagsulay sa Nginx ug PHP-FPM sa Debian 9

Aron masiguro nga gigamit namon karon ang Nginx ingon among web server, maghimo kita usa ka file nga ginganlag info.php sa sulod /var/www/html nga adunay mga musunud nga sulud:

<?php
	phpinfo();
?>

Dayon adto sa http://192.168.0.35/info.php ug susiha ang ibabaw sa panid diin makita nimo kini:

Sa katapusan, atong itudlo ang atong browser sa booksandauthors.php file nga atong gibuhat sa Install LAMP (Linux, Apache, MariaDB o MySQL ug PHP) Stack sa Debian 9.

Sama sa imong makita sa mosunod nga hulagway, kini nga file karon gisilbihan sa Nginx:

NOTE: Kung namatikdan nimo nga ang Nginx nagsilbi sa .php nga mga file isip mga download imbes nga ipatuman kini, hawanan ang cache sa imong browser o pagsulay og laing browser. Ilabi na, kung naggamit ka sa Chrome mahimo nimong sulayan gamit ang incognito mode.

Niining artikuloha among gipatin-aw kon unsaon pag-instalar ug pag-configure ang Nginx aron magsilbi nga dinamikong .php nga mga panid. Mahinungdanon nga timan-an nga pagkahuman sa kini nga una nga pag-setup adunay mga setting nga kinahanglan nga tagdon aron masiguro ang web server.

Mahimo nimong makit-an ang usa ka sukaranan nga summary sa The Ultimate Guide to Secure, Harden and Improve Performance of Nginx Web Server.

Kung nangita ka alang sa virtual nga pag-host sa Nginx, basaha Giunsa ang Pag-setup nga nakabase sa Ngalan ug nakabase sa IP nga Virtual Host sa NGINX.

Sama sa kanunay, ayaw pagpanuko sa pagpahibalo kanamo kung adunay ka mga pangutana o komento bahin sa kini nga artikulo.