Nginx è pronunciato come "Engine-X", che è un server Web e un server proxy inverso. Nginx è noto per la sua velocità e capacità di gestire un gran numero di richieste contemporaneamente con un uso ottimale delle risorse.
PHP-FPM sta per "gestore di processo PHP-FastCGI". CGI si riferisce all'interfaccia gateway comune che è impostata su script per funzionare come interfaccia tra il server Web e i programmi dinamici per la pubblicazione di contenuti. È in ascolto su una porta in modo molto simile al server Web stesso e passa la richiesta tra il PHP e il server Web.
Questo tutorial fornisce istruzioni su come installare e configurare Nginx con PHP-FPM, che ti aiuterà a eseguire programmi PHP in Nginx.
Come discusso in precedenza in Apache vs Nginx, rispetto a Nginx, Apache è relativamente lento durante la gestione di carichi pesanti e l'elaborazione di un numero elevato di richieste.
1. Installa Nginx
Puoi installare Nginx dal sorgente o installarlo utilizzando lo strumento di gestione dei pacchetti fornito con la tua distribuzione.
Ad esempio, su Ubuntu puoi installare nginx usando apt-get come mostrato di seguito.
$ sudo apt-get install nginx
Avvia il server nginx come mostrato di seguito:
$ sudo service nginx start
Vai a http://{your-ip-address} e assicurati di vedere la pagina di benvenuto di Nginx.
2. Installa PHP5-FPM
Quindi, installa php5-fpm usando lo strumento di gestione dei pacchetti fornito con la tua distribuzione.
Ad esempio, su Ubuntu puoi installare php5-fpm usando apt-get come mostrato di seguito.
$ sudo apt-get install php5-fpm
3. Aggiungi la configurazione PHP a Nginx
Quindi, modifica il file /etc/nginx/sites-available/default e aggiungi le seguenti righe.
$ sudo vi /etc/nginx/sites-available/default server { listen 80; root /usr/share/nginx/www; index index.php index.html index.htm; server_name example.com; location / { try_files $uri $uri/ /index.html; } error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/www; } # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 location ~ \.php$ { try_files $uri =404; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
4. Imposta il parametro listen in php5-fpm www.conf
Successivamente, dobbiamo apportare le seguenti modifiche alla configurazione php-frpm.
Per impostazione predefinita, vedrai la seguente voce di ascolto nel file www.conf
$ sudo vi /etc/php5/fpm/pool.d/www.conf listen = 127.0.0.1:9000
Nel file www.conf, lascia tutto così com'è e sostituisci la riga di ascolto sopra con quella mostrata di seguito.
$ sudo vi /etc/php5/fpm/pool.d/www.conf listen = /var/run/php5-fpm.sock
5. Riavvia Nginx e PHP5-FPM e provalo
Riavvia php5-fpm e nginx come mostrato di seguito
$ sudo service nginx restart $ sudo service php5-fpm restart
Infine, crea il seguente file index.php nella root del documento nginx e testalo.
$ sudo vi /usr/share/nginx/www <?php phpinfo( ); ?>
Infine, apri il tuo browser e vai su http://localhost/index.php (o usa il tuo indirizzo IP), che eseguirà il file index.php e visualizzerà le informazioni php.