Installazione Server · 4 min read · Oct 24, 2025
Come Installare Nginx Con PHP E MySQL (LEMP Stack) Su CentOS 7
Nginx (pronunciato “engine x”) è un server HTTP gratuito, open-source e ad alte prestazioni. Nginx è noto per la sua stabilità, ricca gamma di funzionalità, configurazione semplice e basso consumo di risorse. Questo tutorial mostra come puoi installare Nginx su un server CentOS 7 con supporto PHP (tramite PHP-FPM) e supporto MySQL (Mariadb).
1 Nota Preliminare
In questo tutorial utilizzo il nome host server1.example.com con l’indirizzo IP 192.168.1.105. Queste impostazioni potrebbero differire per te, quindi devi sostituirle dove appropriato.
2 Abilitare Repository Aggiuntivi
Nginx non è disponibile nei repository ufficiali di CentOS, quindi includiamo il repository del progetto Nginx per installarlo:
vi /etc/yum.repos.d/nginx.repo [nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=13 Installare MySQL
Prima installiamo Mariadb. Mariadb è un fork gratuito di MySQL. Esegui questo comando nel terminale:
yum install mariadb mariadb-server net-toolsPoi creiamo i collegamenti di avvio del sistema per MySQL (in modo che MySQL si avvii automaticamente ogni volta che il sistema si avvia) e avviamo il server MySQL:
systemctl enable mariadb.service
systemctl start mariadb.serviceOra controlla che la rete sia abilitata. Esegui
netstat -tap | grep mysqlDovrebbe mostrare qualcosa di simile:
[root@example ~]# netstat -tap | grep mysql
tcp 0 0 0.0.0.0:mysql 0.0.0.0:* LISTEN 10623/mysqld Esegui
mysql_secure_installationper impostare una password per l’utente root (altrimenti chiunque può accedere al tuo database MySQL!):
[root@example ~]# mysql_secure_installation
/usr/bin/mysql_secure_installation: line 379: find_mysql_client: command not foundNOTE: ESEGUIRE TUTTE LE PARTI DI QUESTO SCRIPT È RACCOMANDATO PER TUTTI I SERVER MariaDB
IN USO IN PRODUZIONE! PER FAVORE LEGGI ATTENTAMENTE OGNI PASSO!Per accedere a MariaDB per metterlo in sicurezza, avremo bisogno della password
attuale per l'utente root. Se hai appena installato MariaDB, e
non hai ancora impostato la password di root, la password sarà vuota,
quindi dovresti semplicemente premere invio qui.Inserisci la password attuale per root (premi invio per nessuna):
OK, password utilizzata con successo, procedendo...Impostare la password di root garantisce che nessuno possa accedere all'utente root di MariaDB
senza la corretta autorizzazione.Impostare la password di root? [Y/n] <-- ENTER
Nuova password: <-- yourrootsqlpassword
Reinserisci la nuova password: <-- yourrootsqlpassword
Password aggiornata con successo!
Ricaricamento delle tabelle dei privilegi..
... Successo!Per impostazione predefinita, un'installazione di MariaDB ha un utente anonimo, che consente a chiunque
di accedere a MariaDB senza dover avere un account utente creato per
loro. Questo è destinato solo per test, e per rendere l'installazione
un po' più fluida. Dovresti rimuoverli prima di passare a un
ambiente di produzione.Rimuovere gli utenti anonimi? [Y/n] <-- ENTER
... Successo!Normalmente, root dovrebbe essere autorizzato a connettersi solo da 'localhost'. Questo
assicura che qualcuno non possa indovinare la password di root dalla rete.Negare l'accesso remoto a root? [Y/n] <-- ENTER
... Successo!Per impostazione predefinita, MariaDB viene fornito con un database chiamato 'test' a cui chiunque può
accedere. Questo è anche destinato solo per test, e dovrebbe essere rimosso
prima di passare a un ambiente di produzione.Rimuovere il database di test e l'accesso ad esso? [Y/n] <-- ENTER
- Eliminazione del database di test...
... Successo!
- Rimozione dei privilegi sul database di test...
... Successo!Ricaricare le tabelle dei privilegi garantirà che tutte le modifiche apportate finora
entreranno in vigore immediatamente.Ricaricare le tabelle dei privilegi ora? [Y/n] <-- ENTER
... Successo!Pulizia in corso...Tutto fatto! Se hai completato tutti i passaggi sopra, la tua installazione di MariaDB
dovrebbe ora essere sicura.Grazie per aver utilizzato MariaDB!
[root@example ~]#[root@server1 ~]# mysql_secure_installation
4 Installare Nginx
Nginx è disponibile come pacchetto da nginx.org che possiamo installare come segue:
yum install nginxPoi creiamo i collegamenti di avvio del sistema per nginx e lo avviamo:
systemctl enable nginx.service
systemctl start nginx.serviceCi sono possibilità che tu riceva un errore come porta 80 già in uso, il messaggio di errore sarà simile a questo
[root@server1 ~]# service nginx start
Avviando nginx: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] ancora non riesce a bind()
[FALLITO]
[root@server1 ~]#Allora significa che ci sono possibilità che il servizio apache stia girando lì. Ferma il servizio e avvia ulteriormente il servizio per NGINX come segue
systemctl stop httpd.service
yum remove httpd
systemctl disable httpd.servicesystemctl enable nginx.service
systemctl start nginx.serviceE apri le porte http e https nel firewall
firebase-cmd --permanent --zone=public --add-service=http
firebase-cmd --permanent --zone=public --add-service=https
firebase-cmd --reloadL’output risultante nel terminale apparirà simile a questo:
[root@example ~]# firewall-cmd --permanent --zone=public --add-service=http
success
[root@example ~]# firewall-cmd --permanent --zone=public --add-service=https
success
[root@example ~]# firewall-cmd --reload
success
[root@example ~]#Digita l’indirizzo IP o il nome host del tuo server web in un browser (ad es. http://192.168.1.105), e dovresti vedere la pagina di benvenuto di nginx:

Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.