V tomto příspěvku vás krok za krokem provedeme instalací Nginx s PHP-FPM na Debian 11.
Než začneme, je nutné vysvětlit, co jsou Nginx a PHP-FPM, abychom procesu lépe porozuměli.
Nginx je webový server HTTP s otevřeným zdrojovým kódem, který vyniká tím, že je velmi rychlý a efektivní . Nginx je navíc připraven k použití jako reverzní proxy. V tomto režimu se používá k vyrovnání zátěže mezi servery typu back-end a také k použití jako mezipaměť na pomalejším serveru typu back-end.
Jednou z hlavních výhod používání Nginx je, že zpracovává desítky tisíc současných připojení v kompaktním, vícejádrovém procesu CPU. Proto je tak lehký, účinný a především robustní.
Na rozdíl od Apache Nginx nemá modul pro podporu PHP . Pro plnou podporu se tedy musíme uchýlit k PHP-FPM. Takže PHP-FPM je nejoblíbenější alternativní implementací PHP FastCGI , a přestože se používá pro weby s vysokou návštěvností, můžeme jej použít k přidání podpory PHP na server Nginx.
V tomto příspěvku se dozvíte, jak je nainstalovat, abyste měli lehký webový server s dobrou podporou PHP.
Instalovat Nginx s PHP-FPM na Debian 11
Krok 1:Instalace Nginx na Debian 11
První věc, kterou musíte udělat, je nainstalovat Nginx na Debian 11. Výhodou této aplikace je, že je přítomna v oficiálních repozitářích mnoha distribucí Linuxu. Instalace tedy nebude problém.
Otevřete připojení SSH k vašemu serveru a až budete uvnitř, úplně aktualizujte systém.
sudo apt update sudo apt upgrade
Nyní můžete nainstalovat Nginx z oficiálních repozitářů, jako je tento
sudo apt install nginx
Můžete zkontrolovat stav Nginx a zjistit, zda byla instalace úspěšná.
sudo systemctl status nginx ● nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2021-10-11 21:39:55 CEST; 9s ago Docs: man:nginx(8) Process: 1821 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Process: 1822 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Main PID: 2011 (nginx) Tasks: 2 (limit: 2276) Memory: 5.3M CPU: 42ms CGroup: /system.slice/nginx.service ├─2011 nginx: master process /usr/sbin/nginx -g daemon on; master_process on; └─2014 nginx: worker process Oct 11 21:39:55 atechtown systemd[1]: Starting A high performance web server and a reverse proxy server... Oct 11 21:39:55 atechtown systemd[1]: nginx.service: Failed to parse PID from file /run/nginx.pid: Invalid argument Oct 11 21:39:55 atechtown systemd[1]: Started A high performance web server and a reverse proxy server.
Poté musíte otevřít porty ve firewallu, aby Nginx fungoval. To lze provést spuštěním
sudo ufw allow 80/tcp sudo ufw allow 443/tcp
Tímto způsobem, když otevřete webový prohlížeč a přejdete na http://your-server-ip
nebo http://your-domain
uvidíte následující obrazovku
To znamená, že Nginx běží správně.
Pamatujte, že Nginx je také systémová služba, kterou můžete spravovat prostřednictvím systemctl
příkaz, takže jej můžete spustit následovně
sudo systemctl start nginx
Přestaň
sudo systemctl stop nginx
Nebo jej restartujte
sudo systemctl restart nginx
Když běží Nginx, můžeme si začít hrát s PHP-FPM.
Krok 2:Instalace a konfigurace PHP-FPM
PHP-FPM je implementace, kterou vytváří samotné PHP. Instalací se tedy nainstaluje i jazyk. Chcete-li tedy nainstalovat PHP a PHP-FPM, stačí spustit následující příkaz
sudo apt install php php-fpm
To stačí, ale pak je nutné vytvořit nový konfigurační soubor pro naše stránky pomocí PHP.
sudo nano /etc/nginx/sites-available/test.conf
A přidejte následující
server { listen 80; server_name your_domain; root /var/www/test; index index.html index.htm index.php; location / { try_files $uri $uri/ =404; } location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; } location ~ /\.ht { deny all; } }
Nejprve název souboru, můžete jej změnit, zvolil jsem test
pro příklad. Potom musíte změnit server_name
směrnici k názvu vaší domény. root
direktiva odkazuje na umístění webu na pevném disku, který nyní vytvoříme.
Vytvořte složku webu
sudo mkdir -p /var/www/test/
A uvnitř je soubor PHP pro ukázku.
sudo nano /var/www/test/test.php
Přidejte nějaký PHP kód jako phpinfo
metoda.
<?php phpinfo(); ?>
Poté povolte novou konfiguraci.
sudo ln -s /etc/nginx/sites-available/test.conf /etc/nginx/sites-enabled/
A restartujte Nginx
sudo systemctl restart nginx
Otevřete tedy webový prohlížeč a přejděte na http://your-domain/test.php
a uvidíte následující
Nyní tedy máme nainstalovaný Nginx s PHP-FPM na Debianu 11.
Závěr
V tomto příspěvku jste se naučili, jak nainstalovat Nginx s PHP-FPM na Debian 11 pomocí řady kroků a konfigurací, které se snadno používají a které vám umožní mít podporu PHP v Nginx.
Pomozte nám tedy růst a zanechte nám komentář. Pokud vám příspěvek pomohl, sdílejte jej s ostatními.
Web Nginx