GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nainstalovat LEMP Stack (Nginx, MariaDB, PHP7.2) na Ubuntu 18.04 LTS

Tento tutoriál vám ukáže, jak nainstalovat Nginx, MariaDB a PHP7.2 (LEMP) na Ubuntu 18.04. Softwarový zásobník je sada softwarových nástrojů spojených dohromady. LEMP je zkratka pro Linux, Nginx (Engine-X), MariaDB/MySQL a PHP, z nichž všechny jsou open source a lze je používat zdarma. Je to nejběžnější softwarový balík, který pohání dynamické webové stránky a webové aplikace. Linux je operační systém; Nginx je webový server; MariaDB/MySQL je databázový server a PHP je skriptovací jazyk na straně serveru zodpovědný za generování dynamických webových stránek.

Předpoklad

Abyste mohli postupovat podle tohoto návodu, musíte mít operační systém Ubuntu 18.04 spuštěný na místním počítači nebo na vzdáleném serveru. Pokud hledáte VPS (virtuální soukromý server), můžete kliknout na tento speciální odkaz a získat kredit 50 $ zdarma na DigitalOcean. (Pouze pro nové uživatele). Pokud již jste uživatelem DigitalOcean, můžete kliknout na tento speciální odkaz a získat kredit 50 $ zdarma na Vultr (pouze pro nové uživatele). Bez dalších okolků můžeme začít.

Krok 1:Aktualizace softwarových balíčků

Než nainstalujeme zásobník LEMP, je vhodné aktualizovat úložiště a softwarové balíčky spuštěním následujících příkazů na vašem operačním systému Ubuntu 18.04.

Aktualizace sudo aptudo apt

Krok 2:Nainstalujte webový server Nginx

Nginx je vysoce výkonný webový server a v dnešní době velmi populární. Může být také použit jako reverzní proxy a server pro ukládání do mezipaměti. Zadejte tento příkaz pro instalaci webového serveru Nginx.

sudo apt install nginx

Po jeho instalaci můžeme povolit Nginx, aby se automaticky spouštěl při spuštění Ubuntu spuštěním následujícího příkazu.

sudo systemctl povolit nginx

Poté spusťte Nginx pomocí tohoto příkazu:

sudo systemctl spustit nginx

Nyní zkontrolujte jeho stav.

stav systemctl nginx

Výstup:

● nginx.service – Vysoce výkonný webový server a reverzní proxy server Načteno:načteno (/lib/systemd/system/nginx.service; povoleno; přednastaveno dodavatelem:povoleno) Aktivní:aktivní (běžící) od čt 2018- 05-17 02:20:05 UTC; Před 2min 56s Dokumenty:man:nginx(8) Hlavní PID:19851 (nginx) Úkoly:2 (limit:2059) CGroup:/system.slice/nginx.service ├─19851 nginx:hlavní proces /usr/sbin/nginx - g démon zapnutý; master_process on; └─19853 nginx:pracovní proces

Povoleno ” označuje, že je povoleno automatické spouštění při spouštění a vidíme, že Nginx běží. Všimněte si, že výše uvedený příkaz se po spuštění okamžitě neukončí. Musíte stisknout „q ” aby to skončilo.

Zkontrolujte verzi Nginx.

nginx -v

Výstup:

Verze nginx:nginx/1.14.0 (Ubuntu)

Nyní zadejte veřejnou IP adresu vašeho serveru Ubuntu 18.04 do adresního řádku prohlížeče. Měli byste vidět webovou stránku „Welcome to Nginx“, což znamená, že webový server Nginx běží správně. Pokud instalujete LEMP na místní počítač Ubuntu 18.04, zadejte 127.0.0.1 nebo localhost v adresním řádku prohlížeče.

Upozorňujeme, že někteří poskytovatelé cloudových serverů mohou ve výchozím nastavení blokovat veškerý příchozí provoz, takže pokud se váš prohlížeč nemůže připojit k webovému serveru Nginx, možná budete muset nastavit pravidla brány firewall v ovládacím panelu.

Nakonec musíme vytvořit www-data (uživatel Nginx) jako vlastník webového adresáře. Ve výchozím nastavení je ve vlastnictví uživatele root.

sudo chown www-data:www-data /usr/share/nginx/html -R

Krok 3:Nainstalujte databázový server MariaDB

MariaDB je drop-in náhrada za MySQL. Je vyvinut bývalými členy týmu MySQL, kteří se obávají, že by Oracle mohl změnit MySQL na uzavřený produkt. Zadejte následující příkaz pro instalaci MariaDB na Ubuntu 18.04.

sudo apt install mariadb-server mariadb-client

Po instalaci by se měl server MariaDB automaticky spustit. Použijte systemctl zkontrolovat jeho stav.

systemctl status mariadb

Výstup:

● mariadb.service – databázový server MariaDB Načteno:načteno (/lib/systemd/system/mariadb.service; povoleno; přednastaveno dodavatelem:povoleno) Aktivní:aktivní (běží) od čt 2018-05-17 02:39:57 UTC; Před 49 s Hlavní PID:21595 (mysqld) Stav:„Teď se berou vaše požadavky SQL...“ Úkoly:27 (limit:2059) CGroup:/system.slice/mariadb.service └─21595 /usr/sbin/mysqld 

Pokud neběží, spusťte jej tímto příkazem:

sudo systemctl start mariadb

Chcete-li povolit automatické spouštění MariaDB při spouštění, spusťte

sudo systemctl povolit mariadb

Nyní spusťte bezpečnostní skript po instalaci.

sudo mysql_secure_installation

Až budete požádáni o zadání rootovského hesla MariaDB, stiskněte klávesu Enter, protože heslo root ještě není nastaveno. Poté zadejte y pro nastavení hesla uživatele root pro server MariaDB.

Dále můžete stisknout Enter pro zodpovězení všech zbývajících otázek, což odstraní anonymního uživatele, zakáže vzdálené přihlášení root a odstraní testovací databázi. Tento krok je základním požadavkem pro zabezpečení databáze MariaDB. (Všimněte si, že Y je velké, což znamená, že se jedná o výchozí odpověď. )

Ve výchozím nastavení používá balíček MaraiDB na Ubuntu unix_socket k ověření přihlášení uživatele, což v podstatě znamená, že můžete použít uživatelské jméno a heslo operačního systému pro přihlášení do konzoly MariaDB. Můžete tedy spustit následující příkaz a přihlásit se bez zadání hesla root MariaDB.

sudo mariadb -u root

Chcete-li ukončit, spusťte

exit;

Zkontrolujte informace o verzi serveru MariaDB.

mariadb --version

Jak můžete vidět, nainstalovali jsme MariaDB 10.1.29.

mariadb Ver 15.1 Distrib 10.1.29-MariaDB, pro debian-linux-gnu (x86_64) pomocí readline 5.2

Krok 4:Nainstalujte PHP7.2

PHP7.2 je součástí úložiště Ubuntu 18.04 a oproti PHP7.1 má menší výkonnostní zlepšení. Chcete-li nainstalovat php7.2 a některá běžná rozšíření, zadejte následující příkaz.

sudo apt install php7.2 php7.2-fpm php7.2-mysql php-common php7.2-cli php7.2-common php7.2-json php7.2-opcache php7.2-readline php7.2 -mbstring php7.2-xml php7.2-gd php7.2-curl

Rozšíření PHP jsou běžně potřebná pro systémy pro správu obsahu (CMS), jako je WordPress. Například pokud vaše instalace postrádá php7.2-xml , pak mohou být některé stránky vašeho webu WordPress prázdné a v protokolu chyb Nginx můžete najít chybu jako:

Zpráva PHP:Závažná chyba PHP:  Nezachycená chyba:Volání nedefinované funkce xml_parser_create()

Instalace těchto rozšíření PHP zajistí, že váš CMS běží hladce. Nyní spusťte php7.2-fpm.

sudo systemctl start php7.2-fpm

Povolit automatické spouštění při spouštění.

sudo systemctl povolit php7.2-fpm

Zkontrolujte stav:

stav systemctl php7.2-fpm

Ukázkový výstup:

● php7.2-fpm.service – PHP 7.2 FastCGI Process Manager Načteno:načteno (/lib/systemd/system/php7.2-fpm.service; povoleno; předvolba dodavatele Aktivní:aktivní (běží) od čt 2018 -05-17 03:04:46 UTC; před 2min 43s Dokumenty:man:php-fpm7.2(8) Hlavní PID:31922 (php-fpm7.2) Stav:"Procesy aktivní:0, nečinnost:2, Požadavky :0, pomalý:0, Provoz:0req/se Úkoly:3 (limit:2059) CGroup:/system.slice/php7.2-fpm.service ├─31922 php-fpm:hlavní proces (/etc/php/7.2 /fpm/php-fpm.conf) ├─31939 php-fpm:pool www └─31940 php-fpm:pool www

Krok 5:Vytvořte blok serveru Nginx

Blok serveru Nginx je jako virtuální hostitel v Apache. Nepoužijeme výchozí blok serveru, protože je neadekvátní ke spuštění kódu PHP a pokud jej upravíme, stane se z toho nepořádek. Odstraňte tedy default symbolický odkaz v sites-enabled adresář spuštěním následujícího příkazu. (Stále je k dispozici jako /etc/nginx/sites-available/default .)

sudo rm /etc/nginx/sites-enabled/default

Poté vytvořte zcela nový soubor bloku serveru pod /etc/nginx/conf.d/ adresář.

sudo nano /etc/nginx/conf.d/default.conf

Do souboru vložte následující text. Následující úryvek způsobí, že Nginx bude naslouchat na portu IPv4 80 a portu IPv6 80 s názvem univerzálního serveru.

server { poslouchat 80; poslouchej [::]:80; název_serveru _; root /usr/share/nginx/html/; index index.php index.html index.htm index.nginx-debian.html; umístění / { try_files $uri $uri/ /index.php; } umístění ~ \.php$ { fastcgi_pass unix:/run/php/php7.2-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; zahrnout fastcgi_params; include snippets/fastcgi-php.conf; } # Dlouhá životnost mezipaměti prohlížeče může urychlit opakované návštěvy umístění vaší stránky ~* \.(jpg|jpeg|gif|png|webp|svg|woff|woff2|ttf|css|js|ico|xml)$ { access_log vypnuto; log_not_found off; vyprší 360d; } # zakázat přístup k umístění skrytých souborů ~ /\.ht { access_log off; log_not_found off; popřít vše; }}

Uložte a zavřete soubor. Poté otestujte konfigurace Nginx.

sudo nginx -t

Pokud je test úspěšný, znovu načtěte Nginx.

sudo systemctl reload nginx

Krok 6:Otestujte PHP

Pro testování PHP-FPM s webovým serverem Nginx musíme vytvořit info.php soubor v kořenovém adresáři dokumentu.

sudo nano /usr/share/nginx/html/info.php

Do souboru vložte následující kód PHP.

Uložte a zavřete soubor. Nyní do adresního řádku prohlížeče zadejte server-ip-address/info.php . Nahraďte sever-ip-address s vaší skutečnou IP. Pokud postupujete podle tohoto návodu na místním počítači, zadejte 127.0.0.1/info.php nebo localhost/info.php .

Měli byste vidět informace o PHP serveru. To znamená, že skripty PHP mohou správně běžet s webovým serverem Nginx.

Gratuluji! Úspěšně jste nainstalovali Nginx, MariaDB a PHP7.2 na Ubuntu 18.04. Pro zabezpečení vašeho serveru byste měli odstranit info.php soubor nyní, aby jej hacker neviděl.

sudo rm /usr/share/nginx/html/info.php

Další krok

Možná budete chtít nainstalovat phpMyAdmin, což je webový administrátorský panel pro databázový server MySQL/MariaDB.

  • Jak nainstalovat phpMyAdmin s Nginx (LEMP) na Ubuntu 18.04 LTS

Můžete také nainstalovat WordPress na horní část zásobníku LEMP a vytvořit si vlastní web nebo blog.

  • Nainstalujte WordPress na Ubuntu 18.04 s Nginx, MariaDB, PHP7.2 (LEMP)

A je to! Doufám, že vám tento návod pomohl nainstalovat LEMP stack na Ubuntu 18.04 LTS . Jako vždy, pokud pro vás byl tento příspěvek užitečný, přihlaste se k odběru našeho bezplatného zpravodaje a získejte další tipy a triky. Opatruj se.


Ubuntu
  1. Jak nainstalovat Nginx na Ubuntu 20.04

  2. Jak nainstalovat MariaDB na Ubuntu 20.04

  3. Jak nainstalovat LEMP na Ubuntu 16.04

  1. Jak nainstalovat Nextcloud s Nginx na Ubuntu 18.04 LTS

  2. Jak nainstalovat LEMP Stack na Ubuntu 16.04

  3. Jak nainstalovat Linux, Nginx, MySQL, PHP (LEMP Stack) v Ubuntu 18.04

  1. Nainstalujte Nginx, MySQL, PHP (LEMP Stack) na Ubuntu 20.04 LTS

  2. Jak nainstalovat LEMP Stack na Ubuntu 20.04

  3. Jak nainstalovat LEMP Stack (Nginx, MariaDB, PHP7.1) na Ubuntu 17.10