Apache a Nginx jsou svobodné, open-source a populární – nejrozšířenější webové servery na celém světě. Apache i Nginx běží na všech operačních systémech založených na Unixu. Apache je známý svým výkonem, zatímco Nginx svou rychlostí. Nginx se používá také jako reverzní proxy server pro protokoly HTTP, HTTPS, IMAP, SMTP, POP3 a jako vyrovnávač zátěže.
PHP-FPM (FastCGI Process Manager) je alternativní implementace PHP FastCGI speciálně navržená pro vysoce zatížené webové stránky. PHP-FPM umožňuje spouštět více verzí jazyka PHP najednou. PHP-FPM lze na webovém serveru spustit jiným způsobem než mod_PHP. Pokud chcete hostovat svou webovou aplikaci s optimálním výkonem, pak je pro vás PHP-FPM tou nejlepší volbou.
V tomto návodu vysvětlíme, jak zapnout podporu PHP-FPM na webovém serveru Apache a Nginx na serveru Ubuntu 18.04.
- Předpoklady
- Krok 1- Vytvoření serveru Atlantic.Net Cloud
- Krok 2 – Povolení podpory PHP-FPM na webovém serveru Apache
- Instalace Apache a PHP-FPM
- Konfigurace Apache s podporou PHP-FPM
- Krok 3 – Testování webového serveru Apache
- Krok 4 – Povolení podpory PHP-FPM na webovém serveru Nginx
- Krok 5 – Instalace Nginxu a PHP-FPM
- Krok 6 – Konfigurace Nginx s podporou PHP-FPM
- Krok 7 – Testování webového serveru Nginx
- Závěr
Předpoklady
- Čerstvý VPS Ubuntu 18.04 na platformě Atlantic.Net Cloud.
- Platný název domény směřující na IP adresu vašeho VPS.
Krok 1- Vytvoření serveru Atlantic.Net Cloud
Nejprve se přihlaste ke svému serveru Atlantic.Net Cloud. Vytvořte nový server a jako operační systém zvolte Ubuntu 18.04 s alespoň 2 GB RAM. Připojte se ke svému Cloud Serveru přes SSH a přihlaste se pomocí přihlašovacích údajů zvýrazněných v horní části stránky.
Po přihlášení k serveru Ubuntu 18.04 spusťte následující příkaz pro aktualizaci základního systému pomocí nejnovějších dostupných balíčků.
apt-get update -y
Krok 2 – Povolení podpory PHP-FPM na webovém serveru Apache
V této části se dozvíme, jak nainstalovat a povolit podporu PHP-FPM na webovém serveru Apache.
Instalace Apache a PHP-FPM
Nejprve nainstalujte Apache a PHP-FPM spuštěním následujícího příkazu:
apt-get install apache2 libapache2-mod-php libapache2-mod-fcgid php php-fpm php-cli -y
Po instalaci všech balíčků spusťte službu Apache a PHP-FPM následujícím příkazem:
systemctl start apache2systemctl start php7.2-fpm
Konfigurace Apache s podporou PHP-FPM
Dále bude třeba nakonfigurovat webový server Apache s podporou PHP-FPM. Za tímto účelem vytvořte nový konfigurační soubor virtuálního hostitele Apache:
nano /etc/apache2/sites-available/example.com.conf
Přidejte následující řádky:
Soubor uložte a zavřete. Poté povolte konfigurační soubor virtuálního hostitele následujícím příkazem:
a2ensite example.com
Následujícím příkazem povolte několik modulů, aby apache2 mohl pracovat s PHP-FPM:
a2enmod actions fcgid alias proxy_fcgi
Následujícím příkazem restartujte službu Apache:
systemctl restart apache2
Krok 3 – Testování webového serveru Apache
Webový server Apache je nyní nakonfigurován s podporou PHP-FPM. Je čas otestovat, zda je PHP-FPM načten s webovým serverem Apache, nebo ne.
Pro otestování vytvořte ukázkovou informaci.php v kořenovém adresáři dokumentu Apache:
nano /var/www/html/info.php
Přidejte následující řádky:
<?php phpinfo();?>
Soubor uložte a zavřete, poté změňte vlastnictví souboru info.php na www-data:
chown www-data:www-data /var/www/html/info.php
Dále otevřete webový prohlížeč a zadejte adresu URL http://example.com. Měli byste vidět následující stránku:
Výše uvedená stránka ukazuje, že PHP-FPM je načten s webovým serverem Apache.
Poznámka: Nezapomeňte odstranit info.php.
Krok 4 – Povolení podpory PHP-FPM na webovém serveru Nginx
V této části se dozvíme, jak nainstalovat a povolit podporu PHP-FPM na webovém serveru Nginx.
Krok 5 – Instalace Nginxu a PHP-FPM
Nejprve nainstalujte Nginx a PHP-FPM spuštěním následujícího příkazu:
apt-get install nginx php php-fpm php-cli -y
Po instalaci všech balíčků spusťte službu Nginx a PHP-FPM následujícím příkazem:
systemctl start nginxsystemctl start php7.2-fpm
Krok 6 – Konfigurace Nginx s podporou PHP-FPM
Následující krok bude konfigurace webového serveru Nginx s podporou PHP-FPM. Za tímto účelem vytvořte nový konfigurační soubor virtuálního hostitele Nginx:
nano /etc/nginx/sites-available/example.com.conf
Přidejte následující řádky:
ln -s /etc/nginx/sites-available/example.com.conf /etc/nginx/sites-enabled/
Poté restartujte Nginx a službu PHP-FPM, aby se změny v konfiguraci uplatnily:
systemctl restart nginxsystemctl restart php7.2-fpm
Krok 7 – Testování webového serveru Nginx
Webový server Nginx je nyní nakonfigurován s podporou PHP-FPM. Je čas otestovat, zda je PHP-FPM načten s webovým serverem Nginx, nebo ne.
Pro otestování vytvořte ukázkovou informaci.php v kořenovém adresáři dokumentu Nginx:
nano /var/www/html/info.php
Přidejte následující řádky:
<?php phpinfo();?>
Soubor uložte a zavřete, poté změňte vlastnictví souboru info.php na www-data:
chown www-data:www-data /var/www/html/info.php
Dále otevřete webový prohlížeč a zadejte adresu URL http://example.com. Měli byste vidět následující stránku:
Výše uvedená stránka ukazuje, že PHP-FPM je načten s webovým serverem Nginx.
Poznámka: Nezapomeňte po testování odstranit soubor info.php.
Závěr
Gratulujeme! Úspěšně jste nakonfigurovali webový server Nginx a Apache s podporou PHP-FPM. Doufám, že nyní máte dostatek znalostí k tomu, abyste mohli PHP-FPM používat ke spuštění více verzí PHP najednou. Chcete-li začít s PHP-FPM na Apache a Nginx, zaregistrujte si ještě dnes hostingový plán VPS u Atlantic.Net.