Wéi installéiere ech LEMP Stack mat PhpMyAdmin an Ubuntu 20.04


Fir déi vun iech, déi net wësse wat LEMP ass - dëst ass eng Kombinatioun vu Software Packagen - Linux, Nginx (ausgeschwat EngineX), MariaDB a PHP.

Dir kënnt LEMP fir béid Testzwecker benotzen oder an engem richtege Produktiounsëmfeld fir Webapplikatiounen z'installéieren mat PHP Kaderen wéi Laravel oder Yii, oder Inhaltsmanagementsystemer wéi Joomla

Dir kënnt Iech froen wat den Ënnerscheed tëscht LAMP a LEMP ass. Gutt, deen eenzegen Ënnerscheed ass de Webserver deen abegraff ass - Apache (am LAMP) an Nginx (am LEMP). Béid Webserver si zimmlech gutt a wärend Apache deen am meeschte benotzten ass, geet Nginx op kee Fall zréck.

Eng aner wäit benotzt Applikatioun déi normalerweis niewent dem LEMP Stack installéiert ass ass PhpMyAdmin - ass e PHP webbaséierten Tool fir e MySQL/MariaDB Datebankserver vun engem Webbrowser ze administréieren.

Wann Dir no engem LAMP Setup fir Ären Ubuntu 20.04 sicht, da sollt Dir eise LAMP Setup Guide op Ubuntu 20.04 liesen.

  1. Ubuntu 20.04 Server Installatioun Guide

An dësem Artikel léiert Dir wéi Dir de LEMP Stack mat PhpMyAdmin am Ubuntu 20.04 Server installéiere an konfiguréieren.

Schrëtt 1: Nginx op Ubuntu 20.04 installéieren

1. Nginx ass e schnelle modernen Webserver entwéckelt fir vill concurrent Verbindungen ze serveren ouni ze vill Serverressourcen ze konsuméieren. Dofir ass et dacks déi léifste Wiel an Entreprisen Ëmfeld.

NGINX gëtt och allgemeng als Lastbalancer a Webinhalt Cache benotzt. Et ënnerstëtzt Numm-baséiert an IP-baséiert virtuell Serveren (analog zu virtuelle Hosten an Apache).

Dir kënnt Nginx op Ärem Ubuntu 20.04 Desktop oder Server installéieren andeems Dir de folgende Kommando ausféiert.

$ sudo apt update
$ sudo apt install nginx

D'Nginx Konfiguratiounsdateien ginn ënner dem /etc/nginx Verzeichnis gespäichert a seng Haaptkonfiguratiounsdatei ass /etc/nginx/nginx.conf. Wichteg ass seng Standarddokumentroot fir Är Webdateien ze späicheren /usr/share/nginx/html/. Awer Dir kënnt de Standard /var/www/html benotzen deen an Ärer Websäit oder der Applikatioun Server Block Konfiguratiounsdatei konfiguréiert soll ginn.

2. Den Ubuntu Package Installer triggert systemd fir den Nginx Service unzefänken an z'erméiglechen et automatesch unzefänken all Kéier wann de Server nei gestart gëtt. Benotzt déi folgend Systemctl Kommandoen fir ze bestätegen datt de Service leeft an aktivéiert ass.

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

3. Elo ass et Zäit fir ze kontrolléieren ob d'Nginx Installatioun erfollegräich war andeems Dir d'Nginx Säit iwwer de Browser mat Server IP Adress rufft.

http://SERVER_IP

Wann Dir Är Server IP Adress net kennt, kënnt Dir mat IP Kommando fannen wéi gewisen.

$ ip addr show

D'NGINX Standard Websäit soll lueden wéi am folgende Screenshot gewisen, déi korrekt Installatioun an Operatioun bestätegt.

Schrëtt 2: MariaDB Datebank op Ubuntu 20.04 installéieren

4. MariaDB ass e relativ neie relationalen Datebankmanagementsystem deen als Gemeinschaftsgabel vu MySQL entwéckelt gouf nodeems et Oracle Acquisitioun ass.

D'Installatioun vu MariaDB ass einfach a kann mam Kommando gestart ginn wéi:

$ sudo apt install mariadb-server mariadb-client

5. De MariaDB Service gëtt och automatesch gestart an aktivéiert fir ëmmer beim Systemboot ze starten an Dir kënnt dëst mat de folgende Kommandoen bestätegen.

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

6. Wann Dir d'MariaDB Sécherheet wëllt verbesseren, kënnt Dir de Kommando mysql_secure_installation ausféieren, wat e puer grondleeënd, awer wichteg Optiounen ubitt fir ze konfiguréieren:

$ sudo mysql_secure_installation

Wielt dann d'Optioun fir d'Datebankroot (oder Administrator) Benotzerpasswuert ze setzen a befollegt d'Uweisungen a liest d'Froen virsiichteg. Fir Ären Datebankserver ze sécheren, beäntwert d'Froen wéi am Screenshot gewisen.

  • Gitt aktuellt Passwuert fir Root (enter fir keen): Enter
  • E Root Passwuert setzen? [Y/n] y
  • Anonyme Benotzer läschen? [Y/n] y
  • Root Login op afstand net zouloossen? [Y/n] y
  • Testdatenbank läschen an Zougang dozou? [Y/n] y
  • Relude Privileg Dëscher elo? [Y/n] y

7. Fir Datebank Operatiounen ze kreéieren, ze verwalten an auszeféieren, musst Dir mysql Shell Kommando mam -u Fändel fir den Datebank Benotzernumm ze spezifizéieren an -p fir de Passwuert vum Benotzer unzeginn. .

Fir als Root Benotzer ze verbannen, benotzt de sudo Kommando (och ouni de -p Fändel) soss kritt Dir de Feeler am folgenden Screenshot markéiert.

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

Schrëtt 3: PHP an Ubuntu 20.04 installéieren

8. PHP ass eng populär Open-Source, flexibel an dynamesch Skriptesprooch fir Websäiten a Webapplikatiounen ze bauen. Et ënnerstëtzt eng Vielfalt vu Programméierungstechniken. Wichteg ass datt d'PHP Gemeinschaft grouss an divers ass, besteet aus enger Onmass Bibliothéiken, Kaderen an aner nëtzlech Komponenten.

NGINX benotzt FPM (FastCGI Process Manager) oder PHP-FPM, fir PHP Scripten ze veraarbecht. PHP-FPM ass eng wäit benotzt alternativ PHP FastCGI Implementatioun déi mat villen zousätzleche Funktiounen verschéckt gëtt an et gëtt benotzt fir High-Traffic Sites/Webapplikatiounen z'ënnerstëtzen.

Fir PHP a PHP-FPM z'installéieren, fuert de folgende Kommando aus, deen och e puer erfuerderlech zousätzlech Packagen installéiere wäert.

$ sudo apt install php php-mysql php-fpm

Zënter PHP 7.4 ass d'Standardversioun vu PHP an Ubuntu 20.04, sinn d'PHP Konfiguratiounsdateien an /etc/php/7.4/ an d'PHP-FPM Konfiguratiounsdateien ënner /etc/php/7.4/fpm gelagert.

9. Als nächst, kontrolléiert ob de php7.4-fpm Service op a leeft an ob et mat dem folgenden Kommando aktivéiert ass.

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

Schrëtt 4: Nginx konfiguréieren fir mat PHP-FPM ze schaffen

10. Elo musst Dir NGINX konfiguréieren fir Proxy Client Ufroen op PHP-FPM ze konfiguréieren, déi als Standard konfiguréiert ass fir op engem UNIX Socket ze lauschteren wéi definéiert vum Listenparameter am /etc/php/7.4/fpm/pool.d/www .conf Standard Pool Configuratiounsdatei.

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

11. An der Standard Server Block Konfiguratiounsdatei (/etc/nginx/sites-available/default), decommentéiert d'Standortdirektiv fir d'Veraarbechtung vu PHP-Ufroe fir ze kucken wéi deen an der folgender Screenshot.

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

Späichert d'Datei a gitt eraus.

12. Test dann d'NGINX Konfiguratioun Syntax fir Richtegkeet. Wann et OK ass, start den Nginx Service nei fir déi nei Ännerungen z'applizéieren.

$ sudo nginx -t
$ sudo systemctl restart nginx

13. Elo testen ob NGINX a Verbindung mat PHP-FPM funktionéiere kann fir PHP-Ufroen ze veraarbecht. Erstellt eng einfach info.php Säit ënner dem Dokument Root Verzeechnes.

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

14. An Ärem Browser, navigéiert mat der folgender Adress. D'PHP Konfiguratiounssäit soll lueden ze weisen wéi am folgende Screenshot gewisen.

http://SERVER_IP/info.php

Schrëtt 5: Installéiere vu PhpMyAdmin an Ubuntu 20.04

15. PhpMyAdmin ass eng gratis an Open-Source Web-baséiert PHP Applikatioun speziell erstallt fir d'Administratioun vun MySQL/MariaDB Datebank Serveren duerch e Web Browser. Et bitt eng intuitiv grafesch Interface an ënnerstëtzt eng breet Palette vu gemeinsame Funktiounen fir Datebankadministratiounsaufgaben.

$ sudo apt install phpmyadmin

16. Wärend der Packageinstallatioun gitt Dir gefrot fir verschidden Aspekter vum PhpMyAdmin Package ze konfiguréieren. Als éischt gëtt opgefuerdert den Default Webserver ze wielen fir se ze lafen. Press Esc well NGINX net op der Lëscht ass.

17. Als nächst erfuerdert PhpMyAdmin eng Datebank fir mat ze schaffen. An dësem Package Konfiguratiounsprompt, wielt Jo fir eng Datebank fir PhpMyAdmin mam dbconfig-common Package ze konfiguréieren.

18. An der nächster Prompt musst Dir e Passwuert fir PhpMyAdmin ubidden fir Iech mat der MariaDB Datebank ze registréieren. Gitt e séchert Passwuert a klickt Gitt.

Schrëtt 6: NGINX konfiguréieren fir PhpMyAdmin Site ze servéieren

19. Fir NGINX z'erméiglechen fir de PhpMyAdmin Site ze déngen, deen um /usr/share/phpmyadmin läit, erstellt e Symlink fir dësen Verzeechnes ënner der Dokumentwurzel, setzt dann déi richteg Permissiounen a Proprietairen am PHPMyAdmin Verzeichnis wéi follegt.

$ 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. Ausserdeem, suergen datt d'Indexdirektiv an der Standardserverblockkonfiguratioun (/etc/nginx/sites-available/default) Datei enthält index.php wéi an der folgender Screenshot.

21. Als nächst, restart den Nginx Service nach eng Kéier fir déi uewe genannte Ännerungen anzesetzen.

$ sudo systemctl restart nginx

22. Elo Zougang zum PhpMyAdmin Site vun engem Browser mat der folgender Adress.

http://SERVER_IP/phpmyadmin

Op der Login Säit, authentifizéieren mat dem PHPMyAdmin Benotzernumm a Passwuert. Denkt drun datt de Remote Root Benotzer Login deaktivéiert ass, ausser Dir hutt Zougang zu PHPMyAdmin um localhost wou d'MariaDB Datebank installéiert ass, de Root Zougang funktionnéiert net.

Lescht awer net zulescht, sécher Är PhpMyAdmin Installatioun mat eisem Guide: 4 Nëtzlech Tipps fir PhpMyAdmin Web Interface ze sécheren.

Conclusioun

Äre LEMP Setup ass elo fäerdeg an Dir kënnt ufänken Är Webapplikatiounen ze bauen oder einfach mat den Nginx a MariaDB Servicer spillen, déi Dir just installéiert hutt. Dës gi wäit benotzt a méi Wëssen an hinnen ze kréien ass héich recommandéiert fir Systemadministratoren.