GNU/Linux >> Linux Esercitazione >  >> Debian

Come installare Nginx con PHP-FPM su Debian 11

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


Debian
  1. Come installare HTTP Git Server con Nginx su Debian 11

  2. Come installare Ghost su Debian con Nginx

  3. Come installare DokuWiki su Debian Wheezy con Nginx

  4. Come installare WordPress con Nginx su Debian 10

  5. Installa phpMyAdmin su Debian 11 con Nginx

Come installare Apache con PHP-FPM su Debian 10

Come installare Nginx con PHP-FPM su Debian 10

Come installare phpMyAdmin con Nginx su Debian 11 Bullseye

Come installare phpMyAdmin con Nginx su Debian 11

Come installare Nginx in Debian 7

Come installare Nginx su Debian 8.2 Cloud Server