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 Fedora 27 con supporto PHP (tramite PHP-FPM) e MariaDB supporto.
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).
La prima cosa che devi fare è accedere come root o passare a utente root.
su -
Installa MariaDB
Innanzitutto, installeremo MariaDB eseguendo il seguente comando.
dnf -y install mariadb mariadb-server
Avvia il server MariaDB.
systemctl start mariadb
Avvia automaticamente MariaDB durante ogni avvio, digita quanto segue sul terminale e premi Invio.
systemctl enable mariadb
Il passo successivo è rendere sicuro MariaDB utilizzando il comando mysql_secure_installation.
Installa Nginx
Installa Nginx usando il seguente comando.
dnf -y install nginx
Avvia Nginx dopo l'installazione.
systemctl start nginx
Tabelle IP
Emetti i seguenti comandi per consentire la richiesta HTTP attraverso il firewall.
firewall-cmd --permanent --add-service=http firewall-cmd --reload
SELinux
Se ricevi un errore di SELinux sui log di Nginx, ecco il tutorial sull'impostazione della politica di SELinux per Nginx .
setenforce 0
Apri un browser web e visita
http://il-tuo-indirizzo-ipDovresti vedere la seguente pagina e questo ti confermerà che Nginx è stato installato correttamente sul server.

La radice del documento nginx predefinita su Fedora 26 è /usr/share/nginx/html/ . I file di configurazione si trovano in /etc/nginx directory.
Immettere il comando seguente per consentire a Nginx di avviarsi all'avvio del sistema.
systemctl enable nginx
Installa PHP5-FPM
Successivamente è installare PHP tramite PHP-FPM (PHP-FPM (FastCGI Process Manager).
dnf -y install php-fpm php-mysqlnd php-cli
Modifica /etc/php.ini.
vi /etc/php.ini
imposta cgi.fix_pathinfo=0
cgi.fix_pathinfo=0
Modifica il file /etc/php-fpm.d/www.conf,
vi /etc/php-fpm.d/www.conf
Cambia questa riga.
DA:
listen = /run/php-fpm/www.sock
A:
listen = 9000
Assicurati che i seguenti valori siano commentati dall'ONU.
[.More.] pm.min_spare_servers = 5 [.More.] pm.max_spare_servers = 35 [.More.]
Imposta PHP-FPM per l'avvio automatico all'avvio del sistema.
systemctl enable php-fpm
Abilita il supporto PHP-FPM sull'host virtuale
Creiamo un host virtuale basato sul nome sul server Nginx per i seguenti dettagli.
Nome del server:server.itzgeek.local
Radice del documento:/usr/share/nginx/html/itzgeek.local
Crea il file di configurazione chiamato virtual.conf e Modifica /etc/nginx/conf.d/virtual.conf .
vi /etc/nginx/conf.d/virtual.conf
Aggiungi il seguente contenuto.
server { server_name server.itzgeek.local; root /usr/share/nginx/html/itzgeek.local; location / { index index.html index.htm index.php; } location ~ \.php$ { include /etc/nginx/fastcgi_params; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html/itzgeek.local$fastcgi_script_name; } }
Crea una voce host per il tuo dominio (server.itzgeek.local) nel file /etc/hosts.
vi /etc/hosts
Aggiungi una voce host come di seguito.
127.0.0.1 localhost.localdomain localhost server.itzgeek.local
Test del supporto PHP-FPM su host virtuale
Crea la directory principale del documento.
mkdir /usr/share/nginx/html/itzgeek.local
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.local/index.php
Questo comando aprirà un file chiamato index.php, copia/incolla questa riga nel file index.php:
<?php phpinfo(); ?>
Salva e chiudi il file. usa Esc + :wq per salvare il file.
Riavvia i servizi.
systemctl restart nginx systemctl restart php-fpm
Ora apri il tuo browser web e digita il tuo dominio nell'indirizzo web:
http://server.itzgeek.localLa pagina dovrebbe apparire come di seguito:

Dallo screenshot sopra, PHP funziona e funziona tramite FPM/FastCGI, come mostrato nella riga Server API.
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.

Questo è tutto.