Nginx è un server HTTP gratuito, open source e ad alte prestazioni. Nginx è noto per la sua stabilità, il ricco set di funzionalità, la configurazione semplice e il basso consumo di risorse. Questo tutorial mostra come installare Nginx su un Linux Mint 18 con supporto PHP (tramite PHP-FPM) e supporto MySQL. PHP-FPM è un'implementazione alternativa di PHP FastCGI. Ha alcune funzionalità aggiuntive utili per i siti di qualsiasi dimensione, in particolare i siti più affollati).
Installa MySQL:
Innanzitutto, installeremo MySQL emettendo il seguente comando. Ti verrà chiesto di creare una password amministratore MySQL.
$ sudo apt-get install mysql-server
Avvia il server MySQL.
$ service mysql start
Installa Nginx:
Aggiungi il repository Nginx inserendo le seguenti informazioni.
$ sudo nano /etc/apt/sources.list deb http://nginx.org/packages/ubuntu/ trusty nginx deb-src http://nginx.org/packages/ubuntu/ trusty nginx
Aggiorna i repository.
$ sudo apt-get update
Installa Nginx usando il seguente comando.
$ sudo apt-get install nginx
Avvia Nginx dopo l'installazione.
$ service nginx start
Apri un browser web e visita http://tuo-indirizzo-ip , dovresti vedere la pagina seguente; questo ti confermerà che Nginx è stato installato correttamente sul server.
La radice del documento nginx predefinita su Linuxmint 17 è /usr/share/nginx/html/ . I file di configurazione si trovano nella directory /etc/nginx.
Installa PHP5-FPM:
Successivamente è installare PHP tramite PHP-FPM (PHP-FPM (FastCGI Process Manager), è un'implementazione alternativa di PHP FastCGI. Ha alcune funzionalità aggiuntive utili per siti di qualsiasi dimensione, in particolare i siti più frequentati). Installalo eseguendo il seguente comando.
$ sudo apt-get install php5-fpm php5-mysql php5-cli
Modifica /etc/php.ini.
$ sudo nano /etc/php5/fpm/php.ini
imposta cgi.fix_pathinfo=0
cgi.fix_pathinfo=0
Modifica il file /etc/php5/fpm/pool.d/www.conf,
$ sudo nano /etc/php5/fpm/pool.d/www.conf
Assicurati che i seguenti valori siano commentati dall'ONU.
listen = /var/run/php5-fpm.sock
Abilita supporto PHP-FPM su host virtuale:
Creiamo un host virtuale basato sul nome sul server Nginx per i seguenti dettagli.
Nome del server:server.itzgeek.com
Radice del documento:/usr/share/nginx/html/itzgeek.com
Crea il file di configurazione chiamato virtual.conf e Modifica /etc/nginx/conf.d/virtual.conf .
$ sudo nano /etc/nginx/conf.d/virtual.conf
Aggiungi il seguente contenuto.
server { server_name server.itzgeek.com; root /usr/share/nginx/html/itzgeek.com; location / { index index.html index.htm index.php; } location ~ \.php$ { include /etc/nginx/fastcgi_params; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html/itzgeek.com$fastcgi_script_$ } }
Crea una voce host per il tuo dominio (server.itzgeek.com) nel file /etc/hosts.
$ sudo nano /etc/hosts
Aggiungi voce host. La linea dovrebbe apparire come sotto.
127.0.0.1 localhost.localdomain localhost server.itzgeek.com
Test del supporto PHP-FPM sull'host virtuale:
Crea la directory principale del documento.
$ sudo mkdir /usr/share/nginx/html/itzgeek.com
Per testare il PHP, posiziona un file PHP nella radice del documento dell'host virtuale creato, nel terminale copia/incolla la seguente riga:
# vi /usr/share/nginx/html/itzgeek.com/index.php
Questo aprirà un file chiamato index.php, copia/incolla questa riga nel file index.php:
<?php phpinfo(); ?>
Salva e chiudi il file.
Riavvia i servizi.
$ sudo service nginx reload $ sudo service php5-fpm reload
Ora apri il tuo browser web e digita il tuo dominio nell'indirizzo web:
http://server.itzgeek.com
La pagina appare come di seguito:
Dalla schermata sopra, PHP funziona e funziona tramite FPM/FastCGI, come mostrato nella riga dell'API del server. Se scorri più in basso, vedrai tutti i moduli che sono già abilitati in PHP.
Scorri il browser verso il basso e cerca le informazioni sul supporto MySQL.
Extra:
Se ricevi un errore relativo all'autorizzazione negata come di seguito su /var/log/nginx/error.log, devi seguire i passaggi seguenti
connect() to unix:/var/run/php5-fpm.sock failed (13: Permission denied) while connecting to upstream.
Modifica il seguente file.
sudo nano /etc/php5/fpm/pool.d/www.conf
Cambia proprietario da www-data a nginx e abilita anche l'autorizzazione.
listen.owner = nginx listen.group = nginx listen.mode = 0660
LEGGI :phpMyAdmin con Nginx su LinuxMint 18 / LinuxMint 17
Questo è tutto!