Nginx je open-source, vysoce výkonný webový serverr . Je známý svou stabilitou, velmi jednoduchou konfigurací, bohatou sadou funkcí a nízkou spotřebou zdrojů.
Nginx vám umožňuje používat jej jako reverzní proxy, nástroj pro vyrovnávání zatížení, mezipaměť HTTP a poštovní proxy.
Tento příspěvek vám ukazuje, jak nainstalovat Nginx na CentOS 8 / RHEL 8 s podporou PHP (prostřednictvím PHP-FPM) a podporou MariaDB.
PHP-FPM je alternativní implementace PHP FastCGI. Má další funkce, které jsou užitečné pro weby jakékoli velikosti, zejména pro rušnější weby.
Nainstalovat Linux
Pomocí odkazů nainstalujte operační systém Linux
ČTĚTE: Jak nainstalovat CentOS 8 (se snímkem obrazovky)
ČTĚTE: Jak nainstalovat Red Hat Enterprise Linux 8 (se snímkem obrazovky) nebo upgradovat z RHEL 7 na RHEL 8.
Nyní byste měli mít s sebou připravený systém Linux. Nyní na něj nainstalujeme Nginx, MariaDB a PHP-FPM.
Kroky uvedené v tomto článku budou fungovat, pouze pokud jste povolili předplatné Red Hat na RHEL 8 nebo nakonfigurovali místní úložiště yum ve vašem systému.Přihlaste se do systému jako uživatel root nebo se přepněte na uživatele root.
$ su -
Nainstalujte Nginx
Nainstalujte Nginx pomocí základního úložiště
V RHEL 8 je Nginx k dispozici v úložišti rhel-8-for-x86_64-appstream-rpms. Takže nepotřebujeme nastavit úložiště Nginx ručně.
Nainstalujte Nginx pomocí příkazu YUM.
yum -y install nginx
Nainstalujte Nginx pomocí oficiálního úložiště Nginx
Přidejte úložiště Nginx do svého systému.
### CentOS 8 ### cat << EOF > /etc/yum.repos.d/nginx.repo [nginx-mainline] name=nginx mainline repo baseurl=http://nginx.org/packages/mainline/centos/8/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://nginx.org/keys/nginx_signing.key EOF ### RHEL 8 ### cat << EOF > /etc/yum.repos.d/nginx.repo [nginx-mainline] name=nginx mainline repo baseurl=http://nginx.org/packages/mainline/rhel/8/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://nginx.org/keys/nginx_signing.key EOF
Nainstalujte Nginx z oficiálního úložiště Nginx dočasným zakázáním úložiště AppStream.
yum install -y nginx --disablerepo=* --enablerepo=nginx-mainline
Po instalaci spusťte službu webového serveru Nginx.
systemctl start nginx
Zkontrolujte stav služby webového serveru Nginx pomocí příkazu níže.
systemctl status nginx
Firewall
Povolte průchod webových požadavků přes bránu firewall provedením níže uvedených příkazů.
firewall-cmd --permanent --add-service=http firewall-cmd --reload
SELinux
Pokud se v protokolech Nginx zobrazí nějaká chyba pro SELinux, zde je návod na nastavení zásad SELinux pro Nginx.
Jinak můžete dočasně deaktivovat SELinux pomocí následujícího příkazu. Doporučujeme však SELinux trvale zakázat.
setenforce 0 sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
Ověřte instalaci Nginx
Otevřete webový prohlížeč a navštivte níže uvedenou adresu URL.
http://vaše-ip-adresaNainstalován Nginx z úložiště Red Hat:
Měli byste vidět následující stránku Vítejte v nginx na Red Hat Enterprise Linux . Tato stránka potvrzuje, že webový server Ngnix je úspěšně nainstalován na serveru.
Nainstalován Nginx pomocí oficiálního úložiště Nginx:
Výchozí kořenový adresář dokumentů Nginx na CentOS 8 / RHEL 8 je /usr/share/nginx/html/. Další konfigurační soubory naleznete v adresáři /etc/nginx.Povolte službu Nginx při spuštění systému.
systemctl enable nginx
Nainstalujte MariaDB
CentOS 8 / RHEL 8 je dodáván s MariaDB 10.3. Nainstalujte server MariaDB pomocí příkazu yum.
Můžete také nainstalovat balíčky MariaDB z komunity MariaDB.
ČTĚTE :Jak nainstalovat MariaDB na CentOS 8 / RHEL 8
yum -y install mariadb mariadb-server
Spusťte server MariaDB pomocí následujícího příkazu.
systemctl start mariadb
Povolte automatické spouštění služby MariaDB během spouštění systému.
systemctl enable mariadb
Po dokončení instalace serveru MariaDB spusťte příkaz mysql_secure_installation k zabezpečení MariaDB.
Nainstalujte PHP
CentOS 8 / RHEL 8 přichází s PHP 7.2. Nainstalujte PHP pomocí PHP-FPM (FastCGI Process Manager pomocí příkazu YUM.
Pokud chcete, můžete nainstalovat PHP 7.3 pomocí úložiště Remi.
ČTĚTE: Jak nainstalovat PHP 7.3 na CentOS 8 / RHEL 8
yum -y install php-fpm php-mysqlnd php-cli
Upravte /etc/php.ini.
vi /etc/php.ini
nastavte cgi.fix_pathinfo na 0.
cgi.fix_pathinfo=0
Upravte soubor /etc/php-fpm.d/www.conf.
vi /etc/php-fpm.d/www.conf
Ujistěte se, že následující hodnoty jsou opatřeny komentářem OSN.
[.More.] pm.min_spare_servers = 5 [.More.] pm.max_spare_servers = 35 [.More.]
Změňte parametr Listen.
OD
listen = /run/php-fpm/www.sock
KOMU
listen = 127.0.0.1:9000
Poté spusťte službu PHP-FPM.
systemctl start php-fpm
Povolte automatické spouštění služby PHP-FPM při spouštění systému.
systemctl enable php-fpm
Povolte podporu PHP-FPM na virtuálním hostiteli
Nyní vytvoříme virtuálního hostitele na serveru Nginx pro následující podrobnosti pro testování PHP.
Název serveru: web.itzgeek.local
Kořenový adresář dokumentu: /usr/share/nginx/html/web.itzgeek.local
Vytvořte konfigurační soubor s názvem web.itzgeek.local.conf v /etc/nginx/conf.d a upravte jej.
vi /etc/nginx/conf.d/web.itzgeek.local.conf
Přidejte následující obsah.
server { server_name web.itzgeek.local; root /usr/share/nginx/html/web.itzgeek.local; location / { index index.html index.htm index.php; } location ~ \.php$ { include /etc/nginx/fastcgi_params; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } }
Vytvořte kořenový adresář dokumentu.
mkdir /usr/share/nginx/html/web.itzgeek.local
Pro testování PHP umístíme soubor PHP do kořenového adresáře dokumentu vytvořeného virtuálního hostitele.
echo "<?php phpinfo(); ?>" > /usr/share/nginx/html/web.itzgeek.local/index.php
Restartujte služby.
systemctl restart nginx systemctl restart php-fpm
Test LEMP Stack
Vytvořte položku hostitele pro doménu svého webového serveru (server.itzgeek.local) v souboru /etc/hosts (Linux) a souboru hosts (Windows).
192.168.1.10 web.itzgeek.local
Otevřete webový prohlížeč a do adresního řádku zadejte svou doménu.
http://web.itzgeek.localStránka bude vypadat takto.
Z výše uvedeného snímku obrazovky PHP funguje podle očekávání a funguje prostřednictvím FPM/FastCGI, jak je znázorněno na řádku Server API.
Můžete posouvat stránku dále dolů a zobrazit podrobnosti o podpoře MariaDB.
Zajímavá témata
Jak nastavit Let's Encrypt SSL s Nginx na CentOS 8 / RHEL 8
Jak nainstalovat WordPress s Nginx na CentOS 8 / RHEL 8
Jak nainstalovat phpMyAdmin s Nginx na CentOS 8 / RHEL 8
Závěr
Naučili jste se, jak nainstalovat LEMP stack na CentOS 8 / RHEL 8. Podělte se o svůj názor v sekci komentářů.