Vyhledávání na webu

Jak nainstalovat LEMP na Debian 10 Server


Zásobník „LEMP“ je směsí softwaru s otevřeným zdrojovým kódem, který se obvykle instaluje na server Linux za účelem nasazení dynamických aplikací. Tento termín je zkratka, která představuje operační systém Linux, webový server Nginx, databázi MariaDB a programování PHP.

Přečtěte si také: Jak nainstalovat LAMP na Debian 10 Server

Ačkoli tento zásobník „LEMP“ normálně obsahuje MySQL jako systém správy databází, některé distribuce Linuxu, jako je Debian — používají MariaDB jako drop-in náhrada za MySQL.

Požadavky

  1. Jak nainstalovat Debian 10 (Buster) Minimal Server

V tomto článku vám vysvětlíme, jak nainstalovat a nastavit prostředí LEMP na serveru Debian 10 pomocí MariaDB jako správy databáze plošina.

Instalace webového serveru Nginx na Debian 10

Nginx je open source a multiplatformní, lehký, ale výkonný a snadno konfigurovatelný HTTP a reverzní proxy server, poštovní proxy server a generický TCP/UDP proxy server s modulární architekturou.

Některé z jeho základních funkcí zahrnují poskytování statických a indexových souborů; zrychlená podpora s ukládáním do mezipaměti serverů FastCGI, uwsgi, SCGI a Memcached, vyrovnávání zátěže a odolnost proti chybám, SSL a podpora TLS SNI, podpora HTTP/2 s váženou prioritou založenou na závislosti.

Chcete-li nainstalovat balíček Nginx, použijte správce balíčků Debian apt, jak je znázorněno.

apt update 
apt install nginx 

Jakmile je instalace Nginx dokončena, instalátor aktivuje systemd, aby prozatím spustil službu Nginx a umožnil její automatické spouštění při spouštění systému. Stav Nginx můžete zkontrolovat pomocí následujícího příkazu systemctl.

systemctl status nginx

Můžete také použít následující důležité příkazy ke spuštění, restartování, zastavení a opětovnému načtení konfigurace služby Nginx pod systemd.

systemctl start nginx
systemctl restart nginx 
systemctl stop nginx
systemctl reload nginx 
systemctl status nginx 

Dále, pokud máte spuštěný firewall UFW (ve výchozím nastavení je obvykle zakázán), musíte otevřít port 80 (HTTP) a 443 (HTTPS), abyste povolili příchozí provoz na Nginx.

ufw allow 80
ufw allow 443
ufw status

V tuto chvíli musíte otestovat, zda je Nginx správně nainstalován, zda běží a může obsluhovat webové stránky. Chcete-li to provést, otevřete webový prohlížeč a nasměrujte jej na následující adresu URL, abyste získali přístup na webovou stránku Nginx Debian Default.

http://SERVER_IP/
OR
http://localhost/

Instalace MariaDB na Debian 10

Dále musíte nainstalovat databázový systém, abyste mohli ukládat a spravovat data pro svůj web nebo webovou aplikaci. Debian 10 ve výchozím nastavení podporuje MariaDB jako náhradu za MySQL.

Chcete-li nainstalovat MariaDB, spusťte následující příkaz.

apt install mariadb-server

Dále zkontrolujte stav služby MariaDB, protože ji automaticky spouští systemd a je povoleno spouštění při spouštění systému, abyste se ujistili, že je v provozu, použijte následující příkaz.

systemctl status mariadb

Chcete-li spravovat (spustit, restartovat, zastavit a znovu načíst) službu MariaDB pod systemd, můžete použít následující příkaz.

systemctl start mariadb
systemctl restart mariadb
systemctl stop mariadb
systemctl reload mariadb

Dále bude nasazení MariaDB ve výchozím nastavení nezabezpečené. Chcete-li zlepšit zabezpečení databáze, musíte spustit skript shellu, který se dodává s balíčkem.

mysql_secure_installation

Po spuštění skriptu vás provede řadou následujících otázek, abyste mohli upravit výchozí nastavení instalace MariaDB, jak je znázorněno na následujícím snímku obrazovky.

Instalace PHP-FPM (Fast Process Manager) na Debian 10

Na rozdíl od Apache a dalších webových serverů Nginx neposkytuje nativní podporu pro PHP, protože používá PHP-FPM pro zpracování požadavků na stránky PHP. PHP-FPM je alternativní démon FastCGI pro PHP, který umožňuje webu zpracovávat vysoké zatížení pomocí pracovních procesů ke zpracování požadavků.

Chcete-li nainstalovat PHP-FPM verze 7.3 a modul PHP pro komunikaci s databázovým systémem MariaDB/MySQL, spusťte následující příkaz.

apt install php-fpm php-mysqli

Po instalaci PHP-FPM instalační program aktivuje systemd, aby prozatím spustil službu PHP-FPM a umožnil jí automatické spouštění při spouštění systému. Chcete-li zkontrolovat, zda je v provozu, zadejte následující příkaz.

systemctl status php-fpm

Můžete také spustit, restartovat, zastavit a znovu načíst konfiguraci služby PHP-FPM pod systemd, a to následovně.

systemctl start php-fpm
systemctl restart php-fpm
systemctl stop php-fpm
systemctl reload php-fpm
systemctl status php-fpm

Dále musíte zabezpečit PHP-FPM provedením některých změn v konfiguračním souboru /etc/php/7.3/fpm/php.ini následujícím způsobem.

vi /etc/php/7.3/fpm/php.ini

Hledejte ;cgi.fix_pathinfo=1, abyste jej odkomentovali odstraněním znaku ; na začátku, nastavte jeho hodnotu na 0. To zabraňuje Nginxu povolit spouštění souborů bez PHP jako PHP.

cgi.fix_pathinfo=0

Ve výchozím nastavení je PHP-FPM nakonfigurován tak, aby naslouchal na UNIX soxketu, /run/php/php7.3-fpm.sock, jak je definováno v /etc /php/7.3/fpm/pool.d/www.conf konfigurační soubor. Musíte nakonfigurovat celý blok serveru (nebo virtuální hostitele), aby tento soket používal, pokud mají zpracovávat a obsluhovat stránky PHP.

K otestování můžete použít výchozí konfigurační soubor bloku serveru Nginx /etc/nginx/sites-available/default.

vi /etc/nginx/sites-available/default 

Vyhledejte následující sekci a odkomentujte ji, abyste předali PHP skripty na FastCGI server, jak je znázorněno na snímku obrazovky.

location ~ \.php$ {
            include snippets/fastcgi-php.conf;
            fastcgi_pass unix:/run/php/php7.3-fpm.sock;
}

Dále otestujte, zda je struktura konfigurace Nginx OK, pomocí následujícího příkazu.

nginx -t

Pokud je konfigurace Nginx OK, chcete-li použít nedávno provedené změny, restartujte služby php7.3-fpm a nginx následujícím způsobem.

systemctl restart php7.2-fpm
systemctl restart nginx

Testování zpracování PHP-FPM na Nginx

Po konfiguraci PHP-FPM a Nginx, aby spolupracovaly, musíte otestovat, zda dvě služby dokážou zpracovat a obsluhovat stránky PHP klientům. Chcete-li to provést, vytvořte ve svém webovém DocumentRoot jednoduchý PHP skript následujícím způsobem.

echo “<?php phpinfo(); ?>”  | tee /var/www/html/info.php

Nakonec otevřete prohlížeč a zadejte následující adresu, abyste viděli konfigurace PHP v systému vygenerované funkcí phpinfo().

http://SERVER_IP/info.php
OR
http://localhost/info.php

Závěr

V tomto článku jsme si ukázali, jak nainstalovat a nakonfigurovat zásobník LEMP v Debianu 10. Pokud máte nějaké dotazy nebo zpětnou vazbu, kontaktujte nás a dejte nám vědět prostřednictvím níže uvedeného formuláře pro komentáře.