Kif Tinstalla LEMP fuq Debian 10 Server
Munzell LEMP huwa taħlita ta' softwer open-source li huwa tipikament installat fuq server Linux biex juża applikazzjonijiet dinamiċi. Dan it-terminu huwa akronimu li jirrappreżenta s-sistema operattiva Linux, is-server tal-web Nginx, database MariaDB, u programmar PHP.
Għalkemm dan il-munzell \LEMP normalment fih MySQL bħala s-sistema tal-ġestjoni tad-database, xi distribuzzjonijiet Linux bħal Debian — uża MariaDB bħala sostitut drop-in għal MySQL.
- Kif Tinstalla Server Minimu Debian 10 (Buster)
F'dan l-artikolu, aħna ser nispjegawlek kif tinstalla u twaqqaf ambjent LEMP fuq server Debian 10, billi tuża MariaDB bħala l-pjattaforma tal-ġestjoni tad-database.
Installazzjoni ta' Nginx Web Server fuq Debian 10
Nginx huwa sors miftuħ u cross-platform, ħafif iżda qawwi u faċli biex jiġi kkonfigurat HTTP u server proxy invers, server proxy tal-posta, u server proxy TCP/UDP ġeneriku, b'arkitettura modulari.
Xi wħud mill-karatteristiċi bażiċi tagħha jinkludu li jservu fajls statiċi u indiċi; appoġġ aċċellerat b'caching ta 'servers FastCGI, uwsgi, SCGI, u Memcached, ibbilanċjar tat-tagħbija u tolleranza għall-ħsarat, appoġġ SSL u TLS SNI, appoġġ għal HTTP/2 bi prijoritizzazzjoni peżata u bbażata fuq id-dipendenza.
Biex tinstalla l-pakkett Nginx, uża l-maniġer tal-pakketti apt ta 'Debian kif muri.
# apt update # apt install nginx
Ladarba l-installazzjoni ta 'Nginx titlesta, l-installatur jattiva systemd biex jibda s-servizz Nginx għalissa u jippermettilu jibda awtomatikament mal-boot tas-sistema. Tista 'tiċċekkja l-istatus ta' Nginx billi tuża l-kmand systemctl li ġej.
# systemctl status nginx
Tista 'wkoll tuża l-kmandi importanti li ġejjin biex tibda, terġa' tibda, tieqaf u terġa 'tagħbija l-konfigurazzjoni tas-servizz Nginx taħt systemd.
# systemctl start nginx # systemctl restart nginx # systemctl stop nginx # systemctl reload nginx # systemctl status nginx
Sussegwentement, jekk għandek il-firewall UFW qed jaħdem (normalment ikun diżattivat b'mod awtomatiku), trid tiftaħ il-port 80 (HTTP) u 443 (HTTPS) biex tippermetti t-traffiku deħlin fuq Nginx.
# ufw allow 80 # ufw allow 443 # ufw status
F'dan il-punt, għandek bżonn tittestja jekk Nginx huwiex installat sew, jekk huwiex qed jaħdem u jekk jistax iservi paġni tal-web. Biex tagħmel dan, iftaħ browser tal-web u ppuntah lejn il-URL li ġej biex taċċessa l-paġna web Default ta 'Nginx Debian.
http://SERVER_IP/ OR http://localhost/
Installazzjoni ta' MariaDB fuq Debian 10
Sussegwentement, għandek bżonn tinstalla sistema ta' database biex tkun tista' taħżen u timmaniġġja d-dejta għall-websajt jew l-app tal-web tiegħek. Debian 10 jappoġġja MariaDB awtomatikament, bħala sostitut drop-in għal MySQL.
Biex tinstalla MariaDB, mexxi l-kmand li ġej.
# apt install mariadb-server
Sussegwentement, iċċekkja l-istatus tas-servizz MariaDB peress li huwa mibdi awtomatikament minn systemd u ppermettiet li jibda fil-boot tas-sistema, biex tiżgura li tkun qed taħdem, uża l-kmand li ġej.
# systemctl status mariadb
Biex timmaniġġja (tibda, terġa 'tibda, twaqqaf u terġa' tagħbija) is-servizz MariaDB taħt systemd, tista 'tuża l-kmand li ġej.
# systemctl start mariadb # systemctl restart mariadb # systemctl stop mariadb # systemctl reload mariadb
Sussegwentement, l-iskjerament ta 'MariaDB se jkun mhux sigur b'mod awtomatiku. Ikollok bżonn tmexxi script shell li jintbagħat mal-pakkett, biex tkun tista' ttejjeb is-sigurtà tad-database.
# mysql_secure_installation
Wara li tmexxi l-iskrittura, tieħdok permezz ta 'serje ta' mistoqsijiet li ġejjin biex timmodifika s-settings default tal-installazzjoni MariaDB kif muri fil-screenshot li ġej.
Installazzjoni ta' PHP-FPM (Fast Process Manager) fuq Debian 10
B'differenza minn Apache u servers tal-web oħra, Nginx ma jipprovdix appoġġ indiġenu għall-PHP, peress li juża PHP-FPM biex jimmaniġġja talbiet għal paġni PHP. PHP-FPM huwa daemon FastCGI alternattiv għall-PHP li jippermetti li websajt timmaniġġja tagħbijiet għoljin, billi tuża proċessi tal-ħaddiema biex timmaniġġja t-talbiet.
Biex tinstalla PHP-FPM verżjoni 7.3 u modulu PHP biex tikkomunika ma 'sistema ta' database MariaDB/MySQL, mexxi l-kmand li ġej.
# apt install php-fpm php-mysqli
Wara li PHP-FPM jiġi installat, l-installatur jattiva systemd biex jibda s-servizz PHP-FPM għalissa u jippermettilu li jibda awtomatikament mal-boot tas-sistema. Biex tiċċekkja jekk tkunx qed taħdem, agħti l-kmand li ġej.
# systemctl status php-fpm
Tista 'wkoll tibda, terġa' tibda tieqaf, u terġa 'tagħbija l-konfigurazzjoni tas-servizz PHP-FPM taħt systemd, kif ġej.
# systemctl start php-fpm # systemctl restart php-fpm # systemctl stop php-fpm # systemctl reload php-fpm # systemctl status php-fpm
Sussegwentement, għandek bżonn tiżgura PHP-FPM billi tagħmel xi bidliet fil-fajl tal-konfigurazzjoni /etc/php/7.3/fpm/php.ini kif ġej.
# vi /etc/php/7.3/fpm/php.ini
Fittex il-;cgi.fix_pathinfo=1
neħħi l-kumment billi tneħħi l-karattru ;
fil-bidu, issettja l-valur tagħha għal 0
. Dan jipprevjeni lil Nginx milli jippermetti li fajls mhux PHP jiġu esegwiti bħala PHP.
cgi.fix_pathinfo=0
B'mod awtomatiku, PHP-FPM huwa kkonfigurat biex jisma' fuq soxket UNIX, /run/php/php7.3-fpm.sock kif definit fil-fajl tal-konfigurazzjoni /etc/php/7.3/fpm/pool.d/www.conf. Int trid tikkonfigura l-blokk kollu tas-server tiegħek (jew l-hosts virtwali) biex tuża dan is-socket jekk iridu jipproċessaw u jservu paġni PHP.
Tista 'tuża l-fajl tal-konfigurazzjoni tal-blokk tas-server default Nginx /etc/nginx/sites-available/default biex tittestjah.
# vi /etc/nginx/sites-available/default
Fittex it-taqsima li ġejja u neħħi l-kumment tagħha biex tgħaddi skripts PHP lis-server FastCGI kif muri fil-screenshot.
location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php7.3-fpm.sock; }
Sussegwentement, ittestja jekk l-istruttura tal-konfigurazzjoni Nginx hijiex OK, billi tuża l-kmand li ġej.
# nginx -t
Jekk il-konfigurazzjoni Nginx hija OK, biex tapplika l-bidliet li saru reċentement, terġa 'tibda s-servizzi php7.3-fpm u nginx kif ġej.
# systemctl restart php7.2-fpm # systemctl restart nginx
Ittestjar PHP-FPM Ipproċessar fuq Nginx
Wara li kkonfigurat PHP-FPM u Nginx biex jaħdmu flimkien, trid tittestja jekk żewġ servizzi jistgħux jipproċessaw u jservu paġni PHP lill-klijenti. Biex tagħmel dan, oħloq skript PHP sempliċi fil-web DocumentRoot tiegħek kif ġej.
# echo “<?php phpinfo(); ?>” | tee /var/www/html/info.php
Fl-aħħarnett, iftaħ browser u ikteb l-indirizz li ġej biex tara l-konfigurazzjonijiet tal-PHP fuq is-sistema kif ġġenerati mill-funzjoni phpinfo()
.
http://SERVER_IP/info.php OR http://localhost/info.php
F'dan l-artikolu, urejna kif tinstalla u tikkonfigura l-munzell LEMP f'Debian 10. Jekk ikollok xi mistoqsijiet jew feedback, jekk jogħġbok ikkuntattja u għarrafna permezz tal-formola tal-kummenti hawn taħt.