Giunsa ang Pag-install sa LEMP Stack sa PhpMyAdmin sa Ubuntu 20.04


Para sa inyo nga wala makahibalo kung unsa ang LEMP - kini usa ka kombinasyon sa mga software packages - Linux, Nginx (gipahayag nga EngineX), MariaDB ug PHP.

Mahimo nimong gamiton ang LEMP alang sa duha ka katuyoan sa pagsulay o sa usa ka tinuod nga palibot sa produksiyon aron i-deploy ang mga aplikasyon sa web gamit ang mga framework sa PHP sama sa Laravel o Yii, o mga sistema sa pagdumala sa sulud sama sa Joomla

Mahimong maghunahuna ka kung unsa ang kalainan tali sa LAMP ug LEMP. Aw, ang bugtong kalainan mao ang web server nga gilakip - Apache (sa LAMP) ug Nginx (sa LEMP). Ang duha ka mga web server maayo kaayo ug samtang ang Apache mao ang labing kanunay nga gigamit, ang Nginx dili motalikod sa bisan unsang paagi.

Laing kaylap nga gigamit nga aplikasyon nga kasagarang gi-install tupad sa LEMP stack mao ang PhpMyAdmin – usa ka PHP web-based nga himan para sa pagdumala sa MySQL/MariaDB database server gikan sa web browser.

Kung nangita ka ug LAMP setup para sa imong Ubuntu 20.04, nan kinahanglan nimong basahon ang among LAMP setup guide sa Ubuntu 20.04.

  1. Ubuntu 20.04 Giya sa Pag-instalar sa Server

Niini nga artikulo, mahibal-an nimo kung giunsa ang pag-install ug pag-configure sa LEMP stack nga adunay PhpMyAdmin sa Ubuntu 20.04 server.

Lakang 1: Pag-instalar sa Nginx sa Ubuntu 20.04

1. Ang Nginx usa ka paspas nga moderno nga web server nga gidesinyo sa pag-server sa daghang mga dungan nga koneksyon nga wala mag-usik og daghang mga kapanguhaan sa server. Mao kini ang hinungdan nga kini kanunay ang gipalabi nga kapilian sa mga palibot sa negosyo.

Ang NGINX kay kasagarang gigamit usab isip load balancer ug web content cache. Gisuportahan niini ang Name-based ug IP-based virtual servers (kaamgid sa virtual hosts sa Apache).

Mahimo nimong i-install ang Nginx sa imong Ubuntu 20.04 desktop o server pinaagi sa pagpadagan sa mosunod nga sugo.

$ sudo apt update
$ sudo apt install nginx

Ang Nginx configuration files gitipigan ubos sa /etc/nginx directory ug ang main configuration file niini mao ang /etc/nginx/nginx.conf. Importante, ang default nga dokumento nga gamut niini alang sa pagtipig sa imong web files mao ang /usr/share/nginx/html/. Apan mahimo nimong gamiton ang standard/var/www/html nga kinahanglan nga i-configure sa imong website o aplikasyon sa server block configuration file.

2. Ang Ubuntu package installer nag-trigger sa systemd sa pagsugod sa Nginx nga serbisyo ug makahimo niini nga awtomatiko nga magsugod sa matag higayon nga ang server ma-reboot. Gamita ang mosunod nga mga command systemctl aron makumpirma nga ang serbisyo nagdagan ug gipalihok.

$ sudo systemctl status nginx 
$ sudo systemctl is-enabled nginx

3. Karon na ang panahon sa pagsusi kon ang pag-instalar sa Nginx malampuson pinaagi sa pagtawag sa Nginx page pinaagi sa browser gamit ang server IP Address.

http://SERVER_IP

Kung wala nimo nahibal-an ang imong IP address sa server, makit-an nimo gamit ang IP command sama sa gipakita.

$ ip addr show

Ang NGINX default web page kinahanglan nga mag-load sama sa gipakita sa mosunod nga screenshot, nagpamatuod sa husto nga pag-instalar ug operasyon.

Lakang 2: Pag-instalar sa MariaDB Database sa Ubuntu 20.04

4. Ang MariaDB kay medyo bag-o nga relational database management system nga gidesinyo isip community fork sa MySQL pagkahuman sa Oracle acquisition.

Ang pag-instalar sa MariaDB yano ug mahimong sugdan sa command sama sa:

$ sudo apt install mariadb-server mariadb-client

5. Ang serbisyo sa MariaDB awtomatik usab nga gisugdan ug gipalihok nga kanunay magsugod sa boot sa sistema ug makumpirma nimo kini gamit ang mosunod nga mga sugo.

$ sudo systemctl status mariadb
$ sudo systemctl is-enabled mariadb

6. Kung gusto nimo nga pauswagon ang seguridad sa MariaDB, mahimo nimong ipadagan ang mysql_secure_installation nga mando, nga maghatag pipila ka sukaranan, apan hinungdanon nga mga kapilian aron ma-configure:

$ sudo mysql_secure_installation

Dayon pilia ang kapilian sa pagtakda sa database root (o administrator) password sa user ug sunda ang mga prompt ug basaha pag-ayo ang mga pangutana. Aron masiguro ang imong database server, tubaga ang mga pangutana sama sa gipakita sa screenshot.

  • Isulod ang kasamtangang password para sa gamut (isulod para wala): Enter
  • Pagbutang ug root password? [Y/n] y
  • Kuhaa ang anonymous nga tiggamit? [Y/n] y
  • Dili tugotan ang root login sa layo? [Y/n] y
  • Kuhaa ang database sa pagsulay ug pag-access niini? [Y/n] y
  • I-reload ang mga privilege table karon? [Y/n] y

7. Aron makamugna, makadumala, ug makahimo sa mga operasyon sa database, kinahanglan nimo ang mysql shell command gamit ang -u flag aron matino ang database username ug -p aron mahatagan ang password sa user .

Aron makonektar isip root user, gamita ang sudo command (bisan walay -p flag) kung dili makadawat ka sa sayop nga gipasiugda sa mosunod nga screenshot.

$ mysql -u root -p
$ sudo mysql -u root

Lakang 3: Pag-instalar sa PHP sa Ubuntu 20.04

8. Ang PHP kay sikat nga open-source, flexible, ug dynamic nga scripting language para sa pagtukod og mga website ug web applications. Gisuportahan niini ang lainlaing mga teknik sa pagprograma. Importante, ang PHP nga komunidad kay dako ug lain-laing, gilangkuban sa dili maihap nga mga librarya, frameworks, ug uban pang mapuslanong mga bahin.

Ang NGINX naggamit sa FPM (FastCGI Process Manager) o PHP-FPM, aron maproseso ang mga script sa PHP. Ang PHP-FPM usa ka kaylap nga gigamit nga alternatibo nga PHP FastCGI nga pagpatuman nga gipadala uban ang daghang dugang nga mga bahin ug kini gigamit alang sa gahum sa mga site nga adunay daghang trapiko/aplikasyon sa web.

Aron ma-install ang PHP ug PHP-FPM, pagdagan ang mosunud nga mando nga mag-install usab sa pipila nga kinahanglan nga dugang nga mga pakete.

$ sudo apt install php php-mysql php-fpm

Tungod kay ang PHP 7.4 mao ang default nga bersyon sa PHP sa Ubuntu 20.04, ang PHP configuration files nahimutang sa /etc/php/7.4/ ug ang PHP-FPM configuration files gitipigan ubos sa /etc/php/7.4/fpm.

9. Sunod, susiha kon ang php7.4-fpm nga serbisyo anaa na ug nagdagan ug kon kini gipagana uban sa mosunod nga sugo.

$ sudo systemctl status php7.4-fpm
$ sudo systemctl is-enabled php7.4-fpm

Lakang 4: Pag-configure sa Nginx aron magtrabaho kauban ang PHP-FPM

10. Karon kinahanglan nimo nga i-configure ang NGINX sa proxy nga mga hangyo sa kliyente sa PHP-FPM, nga sa default gi-configure aron maminaw sa usa ka UNIX socket ingon nga gipasabut sa listen parameter sa /etc/php/7.4/fpm/pool.d/www .conf default pool configuration file.

$ sudo vi /etc/php/7.4/fpm/pool.d/www.conf 

11. Sa default server block configuration file (/etc/nginx/sites-available/default), uncomment ang location directive para sa pagproseso sa mga request sa PHP aron tan-awon sama sa gipakita sa mosunod nga screenshot.

$ sudo vi /etc/nginx/sites-available/default

I-save ang file ug paggawas.

12. Unya sulayi ang NGINX configuration syntax alang sa pagkahusto. Kung OK ra, i-restart ang serbisyo sa Nginx aron magamit ang bag-ong mga pagbag-o.

$ sudo nginx -t
$ sudo systemctl restart nginx

13. Karon sulayi kung ang NGINX makatrabaho kauban ang PHP-FPM aron maproseso ang mga hangyo sa PHP. Paghimo og yano nga panid sa info.php ubos sa direktoryo sa gamut nga dokumento.

$ echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php

14. Sa imong browser, navigate gamit ang mosunod nga adres. Ang panid sa pag-configure sa PHP kinahanglan nga mag-load nga gipakita sama sa gipakita sa mosunod nga screenshot.

http://SERVER_IP/info.php

Lakang 5: Pag-instalar sa PhpMyAdmin sa Ubuntu 20.04

15. Ang PhpMyAdmin usa ka libre ug open-source nga web-based PHP application nga espesipikong gimugna para sa pagdumala sa MySQL/MariaDB database servers pinaagi sa web browser. Naghatag kini usa ka intuitive nga graphical interface ug nagsuporta sa usa ka halapad nga lainlaing mga sagad nga bahin alang sa mga buluhaton sa pagdumala sa database.

$ sudo apt install phpmyadmin

16. Atol sa pag-instalar sa package, hangyoon ka sa pag-configure sa pipila ka aspeto sa PhpMyAdmin package. Una, pagaaghaton sa pagpili sa default web server alang sa pagpadagan niini. Pindota ang Esc tungod kay ang NGINX wala sa lista nga gihatag.

17. Sunod, ang PhpMyAdmin nanginahanglan ug database aron magamit. Niini nga package configuration prompt, pilia ang Yes aron ma-configure ang database para sa PhpMyAdmin gamit ang dbconfig-common package.

18. Sa sunod nga prompt, kinahanglan ka maghatag ug password para sa PhpMyAdmin para magparehistro sa database sa MariaDB. Pagsulod ug luwas nga password ug i-klik ang Enter.

Lakang 6: Pag-configure sa NGINX sa Pag-alagad sa PhpMyAdmin Site

19. Aron makahimo ang NGINX sa pag-alagad sa PhpMyAdmin site nga nahimutang sa /usr/share/phpmyadmin, paghimo ug symlink alang niini nga direktoryo ubos sa gamut sa dokumento, unya ibutang ang hustong mga permiso ug pagpanag-iya sa PHPMyAdmin nga direktoryo sama sa mosunod.

$ sudo ln -s  /usr/share/phpmyadmin /var/www/html/phpmyadmin
$ sudo chmod 775 -R /usr/share/phpmyadmin/
$ sudo chown root:www-data -R /usr/share/phpmyadmin/

20. Gawas pa, siguroha nga ang direktiba sa indeks sa default server block configuration (/etc/nginx/sites-available/default) nga file naglakip sa index.php sama sa gipakita sa mosunod nga screenshot.

21. Sunod, i-restart ang serbisyo sa Nginx sa makausa pa aron magamit ang mga pagbag-o sa ibabaw.

$ sudo systemctl restart nginx

22. Karon access sa PhpMyAdmin site gikan sa usa ka browser gamit ang mosunod nga adres.

http://SERVER_IP/phpmyadmin

Sa login page, pamatud-i gamit ang PHPMyAdmin username ug password. Hinumdumi nga ang hilit nga pag-login sa tiggamit sa gamut wala’y mahimo gawas kung nag-access ka sa PHPMyAdmin sa localhost kung diin gi-install ang database sa MariaDB, ang pag-access sa gamut dili molihok.

Katapusan apan dili labing gamay, i-secure ang imong pag-install sa PhpMyAdmin gamit ang among giya: 4 Mapuslanon nga Mga Tip sa Pagsiguro sa PhpMyAdmin Web Interface.

Konklusyon

Kompleto na ang imong LEMP setup ug mahimo ka magsugod sa paghimo sa imong mga web application o pagdula lang sa mga serbisyo sa Nginx ug MariaDB nga imong gi-install. Kini kaylap nga gigamit ug ang pag-angkon og dugang nga kahibalo niini girekomendar kaayo alang sa mga tigdumala sa sistema.