Jak nainstalovat LEMP (Linux, Nginx, MariaDB, PHP-FPM) na Debian 9 Stretch
Protože Debian pohání velké procento webových serverů po celém světě, v tomto článku vysvětlíme, jak nainstalovat LEMP (Linux + Nginx + MariaDB + PHP-FPM) zásobník na Debian 9 Stretch jako alternativa k LAMP (použijte tohoto průvodce nainstalovat LAMP na Debian 9).
Navíc si ukážeme, jak provést minimální konfiguraci Nginx/PHP-FPM, aby i noví správci systému mohli nastavit zcela nové webové servery pro nastavení dynamických stránek.
K tomu využijeme nedávné aktualizace oficiálních úložišť distribuce. Předpokládá se, že jste Debian 9 nainstalovali na holý počítač, virtuální počítač nebo VPS, nebo jste provedli upgrade z Jessie.
Instalace LEMP v Debian 9 Stretch
Možná se divíte, proč jsme jako součást zásobníku LEMP zmínili PHP-FPM místo PHP. Na rozdíl od jiných webových serverů Nginx neposkytuje nativní podporu pro PHP.
Z tohoto důvodu se ke zpracování požadavků na stránky PHP používáPHP-FPM (Fast Process Manager). Více o PHP-FPM se můžete dozvědět na oficiálních stránkách PHP.
Výchozí verze poskytovaná v repozitářích Debianu php7.0-fpm. Jak pravděpodobně můžete odhadnout na základě názvu balíčku, tato verze dokáže zpracovat i požadavky na stránky včetně kódu PHP 7.
POZNÁMKA: Pokud byl ve stejné krabici již dříve nainstalován Apache, před pokračováním se ujistěte, že je zastaven a deaktivován.
S tím, co bylo řečeno, nainstalujme součásti zásobníku LEMP následovně:
aptitude update
aptitude install nginx mariadb-server mariadb-client php-mysqli php7.0-fpm
Po dokončení instalace se nejprve ujistěte, že jsou spuštěny Nginx a PHP-FPM a že je povoleno spuštění při spouštění:
systemctl status nginx php7.0-fpm
Pokud to znamená, že jedna nebo obě služby neběží, udělejte to.
systemctl start nginx php7.0-fpm
systemctl enable nginx php7.0-fpm
Jako u každé instalace MariaDB nebo MySQL je důležité spustit mysql_secure_installation, abyste provedli minimální konfiguraci zabezpečení a nastavili heslo pro kořenový účet databáze.
mysql_secure_installation
Pokud nevíte, jak to udělat, můžete se podívat na krok #4 v Jak nainstalovat MariaDB 10 na Debian a Ubuntu.
Konfigurace Nginx pro použití PHP-FPM na Debianu 9
Hlavní konfigurační soubor Nginx je /etc/nginx/sites-available/default, kde budeme muset v bloku serveru provést následující změny:
- Ujistěte se, že je povolen blok location, který zpracovává požadavky PHP, s výjimkou toho, kde direktiva fastcgi_pass ukazuje na síťovou kartu se zpětnou smyčkou.
- Přidejte index.php za direktivu index, abyste označili, že pokud bude nalezena, měla by být ve výchozím nastavení poskytnuta před index.html nebo jinými soubory.
- Přidejte direktivu server_name ukazující na IP adresu nebo název hostitele vašeho serveru. V našem případě to bude 192.168.0.35.
- Dále se ujistěte, že direktiva root ukazuje na umístění, kde budou uloženy vaše soubory
.php
(ve výchozím nastavení /var/www/html) .
Až budete hotovi, můžete pomocí následujícího příkazu otestovat konfigurační soubor na chyby.
nginx -t
V tomto okamžiku by váš /etc/nginx/sites-available/default měl vypadat následovně, kde čísla odkazují na konfiguraci představující výše uvedený seznam:
grep -Ev '#' /etc/nginx/sites-available/default
Testování Nginx a PHP-FPM na Debianu 9
Abychom se ujistili, že nyní jako webový server používáme Nginx, vytvořte soubor s názvem info.php uvnitř /var/www/html s následující obsah:
<?php
phpinfo();
?>
Poté přejděte na http://192.168.0.35/info.php a v horní části stránky byste měli vidět toto:
Nakonec ukažme náš prohlížeč na soubor booksandauthors.php, který jsme vytvořili v instalačním zásobníku LAMP (Linux, Apache, MariaDB nebo MySQL a PHP) na Debianu 9.
Jak můžete vidět na následujícím obrázku, tento soubor nyní obsluhuje Nginx:
POZNÁMKA: Pokud si všimnete, že Nginx stahuje soubory .php
místo toho, aby je spouštěl, vymažte mezipaměť prohlížeče nebo zkuste jiný prohlížeč . Zejména pokud používáte Chrome, možná budete chtít otestovat anonymní režim.
souhrn
V tomto článku jsme vysvětlili, jak nainstalovat a nakonfigurovat Nginx pro poskytování dynamických stránek .php
. Je důležité si uvědomit, že po tomto počátečním nastavení existují nastavení, která je třeba vzít v úvahu pro zabezpečení webového serveru.
Základní shrnutí můžete najít v The Ultimate Guide to Secure, Hardden and Improve Performance of Nginx Web Server.
Pokud hledáte virtuální hosting na Nginx, přečtěte si Jak nastavit virtuální hostitele založené na názvech a IP na NGINX.
Jako vždy nám neváhejte dát vědět, pokud máte dotazy nebo připomínky k tomuto článku.