FastCGI Process Manager (FPM) è un'alternativa alla configurazione FastCGI con molteplici miglioramenti. Questo è utile per i siti Web ad alto carico. Questo tutorial ti aiuterà con l'installazione e la configurazione di PHP-FPM con Nginx sul tuo sistema Debian 10 Buster Linux.
Prerequisiti
Devi avere accesso SSH al sistema Debian 10 con privilegi Sudo.
Installazione di Nginx
I pacchetti Nginx sono disponibili nei repository predefiniti. SSH sul tuo sistema Debian 10 con account con privilegi sudo e installa il server web Nginx dal repository ufficiale.
sudo apt update sudo apt install nginx
Installazione PHP
Per l'installazione di PHP consigliamo di utilizzare il PPA di Ondřej Surý, che fornisce le ultime versioni di PHP per i sistemi Debian. Usa i seguenti due comandi per aggiungere il PPA al tuo sistema.
wget -q https://packages.sury.org/php/apt.gpg -O- | sudo apt-key add - sudo echo "deb https://packages.sury.org/php/ buster main" | tee /etc/apt/sources.list.d/php.list
Quindi installa l'ultima versione di PHP disponibile il giorno in cui scrivi questo tutorial. Esegui semplicemente i seguenti comandi per l'installazione di pacchetti PHP e PHP-FPM.
Nota:- Quando si utilizza PHP-FPM. Tutte le configurazioni dei moduli PHP risiedono in /etc/php/7.3/fpm/ directory. Puoi leggere di più sull'abilitazione/disabilitazione dei moduli PHP.apt update sudo apt install php php-fpm
Dopo aver installato i pacchetti di cui sopra, il servizio php7.3-fpm verrà avviato automaticamente. Puoi esserne sicuro digitando il comando sotto sul terminale.
sudo systemctl status php7.3-fpm ● php7.3-fpm.service - The PHP 7.3 FastCGI Process Manager Loaded: loaded (/lib/systemd/system/php7.3-fpm.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2019-12-03 10:01:54 UTC; 24min ago Docs: man:php-fpm7.3(8) Main PID: 9883 (php-fpm7.3) Status: "Processes active: 0, idle: 2, Requests: 3, slow: 0, Traffic: 0req/sec" Tasks: 3 (limit: 3587) Memory: 14.2M CGroup: /system.slice/php7.3-fpm.service ├─9883 php-fpm: master process (/etc/php/7.3/fpm/php-fpm.conf) ├─9884 php-fpm: pool www └─9885 php-fpm: pool www Dec 03 10:01:54 tecadmin-debian10 systemd[1]: Starting The PHP 7.3 FastCGI Process Manager... Dec 03 10:01:54 tecadmin-debian10 systemd[1]: Started The PHP 7.3 FastCGI Process Manager.
Configurazione Nginx
Creiamo l'host virtuale Nginx da eseguire con FPM/FastCGI. Per questo tutorial, utilizziamo VirtualHost predefinito. Modifica il file di configurazione dell'host VirtualHost in un editor di testo. Puoi creare un nuovo VirtualHost secondo le tue esigenze, quindi assicurati di abilitare qualsiasi nuovo VirtualHost.
sudo vim /etc/nginx/sites-available/example.com
Utilizzare la configurazione di base dell'host virtuale Nginx di seguito con le impostazioni PHP FPM. Aggiorna la configurazione come segue.
Apache
123456789101112131415 | server { ascolta 80; radice /var/www/html; indice index.php index.html index.htm; nome_server esempio.com; posizione / { file_prova $uri $uri/ =404; } posizione ~ \.php$ { include frammenti/fastcgi-php.conf; fastcgi_pass unix:/run/php/php7.3-fpm.sock; }} |
Salva le modifiche nel file di configurazione e crea un collegamento alla directory abilitata per il sito.
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/example.com
Quindi riavvia il servizio Nginx per ricaricare le modifiche.
sudo systemctl restart nginx.service
Impostazione di prova
Crea uno script PHP con phpinfo() funzione e posizionarlo nella radice del documento del server. Usa il comando sotto per farlo.
echo "<?php phpinfo(); ?>" > /var/www/html/info.php
Ora accedi a info.php utilizzando l'indirizzo IP del server (per VirtualHost predefinito) per il tuo dominio configurato in Nginx VirtualHost.
http://localhost/info.php
Conclusione
Tutto fatto. Hai configurato correttamente il server web Nginx con PHP-FPM sul tuo Debian 10 (Buster) Linux. Il tuo server è pronto per ospitare siti web.