In questo post, ti guideremo passo dopo passo per installare Nginx con PHP-FPM su Debian 11.
Prima di iniziare, è necessario spiegare cosa sono Nginx e PHP-FPM per comprendere meglio il processo.
Nginx è un server Web HTTP open source che si distingue per essere molto veloce ed efficiente . Inoltre, Nginx è pronto per essere utilizzato come proxy inverso. In questa modalità, viene utilizzato per bilanciare il carico tra i server back-end e per essere utilizzato come cache su un server back-end più lento.
Uno dei principali vantaggi dell'utilizzo di Nginx è che elabora decine di migliaia di connessioni simultanee in un processo CPU compatto e multi-core. Per questo è così leggero, efficiente e soprattutto robusto.
A differenza di Apache, Nginx non ha un modulo per supportare PHP . Quindi dobbiamo ricorrere a PHP-FPM per il pieno supporto. Quindi, PHP-FPM è l'implementazione alternativa più popolare di PHP FastCGI e sebbene venga utilizzato per siti Web ad alto traffico, possiamo usarlo per aggiungere supporto PHP a un server Nginx.
In questo post imparerai come installarli in modo da avere un server web leggero con un buon supporto PHP.
Installa Nginx con PHP-FPM su Debian 11
Passaggio 1:installa Nginx su Debian 11
La prima cosa da fare è installare Nginx su Debian 11. Il vantaggio di questa applicazione è che è presente nei repository ufficiali di molte distribuzioni Linux. Quindi, installarlo non sarà un problema.
Apri una connessione SSH al tuo server e quando sei all'interno aggiorna il sistema completamente.
sudo apt update sudo apt upgrade
Ora puoi installare Nginx dai repository ufficiali in questo modo
sudo apt install nginx
Puoi controllare lo stato di Nginx per vedere se l'installazione è andata a buon fine.
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.
Quindi devi aprire le porte nel firewall affinché Nginx funzioni. Questo può essere fatto eseguendo
sudo ufw allow 80/tcp sudo ufw allow 443/tcp
In questo modo, quando apri un browser web e vai su http://your-server-ip
o http://your-domain
vedrai la seguente schermata
Ciò indica che Nginx funziona correttamente.
Ricorda che Nginx è anche un servizio di sistema che puoi gestire tramite il systemctl
comando in modo da poterlo avviare come segue
sudo systemctl start nginx
Smettila
sudo systemctl stop nginx
Oppure riavvialo
sudo systemctl restart nginx
Con Nginx in esecuzione, possiamo quindi iniziare a giocare con PHP-FPM.
Fase 2:installa e configura PHP-FPM
PHP-FPM è un'implementazione realizzata da PHP stesso. Quindi l'installazione installa anche la lingua. Quindi, per installare PHP e PHP-FPM basta eseguire il seguente comando
sudo apt install php php-fpm
Questo è sufficiente, ma è poi necessario creare un nuovo file di configurazione per il nostro sito con PHP.
sudo nano /etc/nginx/sites-available/test.conf
E aggiungi quanto segue
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; } }
Innanzitutto il nome del file, puoi cambiarlo, ho scelto test
per un esempio. Quindi, devi cambiare il server_name
direttiva al tuo nome di dominio. La root
la direttiva si riferisce alla posizione del sito sul disco rigido che creeremo ora.
Crea la cartella del sito
sudo mkdir -p /var/www/test/
E al suo interno, un file PHP per la demo.
sudo nano /var/www/test/test.php
Aggiungi del codice PHP come phpinfo
metodo.
<?php phpinfo(); ?>
Quindi, abilita la nuova configurazione.
sudo ln -s /etc/nginx/sites-available/test.conf /etc/nginx/sites-enabled/
E riavvia Nginx
sudo systemctl restart nginx
Quindi, apri un browser web e vai su http://your-domain/test.php
e vedrai quanto segue
Quindi, ora abbiamo Nginx con PHP-FPM su Debian 11 installato.
Conclusione
In questo post hai imparato come installare Nginx con PHP-FPM su Debian 11 attraverso una serie di passaggi e configurazioni facili da applicare e che ti permetteranno di avere il supporto PHP in Nginx.
Quindi aiutaci a crescere e lasciaci un commento, anche se il post ti ha aiutato condividilo con gli altri.
Sito web di Nginx