Introduzione
Nginx (pronunciato Motore X ) è un popolare server Web HTTP open source, utilizzato per l'hosting di siti Web ad alto traffico. È più veloce e richiede meno risorse rispetto ad altri server web.
Il software utilizza un'architettura scalabile basata su eventi (asincrona), che si avvicina alle richieste una alla volta. Oltre a un server Web, funziona anche come proxy inverso, proxy di posta, cache HTTP e bilanciamento del carico.
In questo tutorial imparerai come installare Nginx su CentOS 8.

Prerequisiti
- Un sistema operativo CentOS 8
- Un IP del server o un dominio per connettersi al tuo server web Nginx
- Un utente con privilegi di root
- SELinux configurato correttamente
Installa Nginx su CentOS 8
Prima di qualsiasi installazione, aggiorna sempre il repository locale per assicurarti di scaricare il software più recente. Usa il comando:
sudo yum update
Puoi ispezionare il pacchetto Nginx prima di aggiungerlo al tuo sistema. Richiedi di vedere i metadati RPM incluso in ogni pacchetto RPM:
sudo yum info nginx

Quindi, installa Nginx su CentOS 8 con il comando:
sudo yum install nginx
L'output mostra un elenco di pacchetti Nginx che sono stati installati, come nell'immagine qui sotto.

Avvia Nginx su Centos 8
Sebbene tu abbia installato Nginx, il servizio non si avvierà automaticamente.
Inizia il servizio digitando:
sudo systemctl start nginx
Per attivare il servizio da avviare al momento dell'avvio usa:
sudo systemctl enable nginx
Se controlli lo stato del servizio , l'output dovrebbe mostrare che Nginx è attivo (in esecuzione) :
sudo systemctl status nginx

Interrompi, Ricarica o Riavvia Nginx
Interrompi Nginx usando il comando:
sudo systemctl stop nginx
Riavvia Nginx (ferma e riavvia il servizio) con il comando:
sudo systemctl restart nginx
Ricarica i file di configurazione senza interrompere il servizio:
sudo systemctl reload nginx
Regola Firewall
Nginx include file di servizio firewalld che specificano che il servizio utilizza le porte 80 (HTTP) e 443 (HTTPS) per il traffico web. Pertanto, è necessario aprire e abilitare queste porte per consentire l'accesso permanente.
Apri porta HTTP e HTTPS con i comandi:
sudo firewall-cmd --permanent --zone=public --add-service=http --add-service=https
sudo firewall-cmd --reload
sudo firewall-cmd --list-services --zone=public
Testare il firewall
Usa Netstat per elencare tutte le porte aperte e verifica se hai aperto con successo 80 e 443:
netstat -tulpn
Verifica che Nginx funzioni visitando il tuo indirizzo IP pubblico (o nome di dominio).
Per vedere l'indirizzo IP del tuo server, digita il seguente comando nel terminale:
ip addr
Trova l'indirizzo IP e copialo.

Quindi, apri un browser Web e incolla l'indirizzo IP (o il nome di dominio) nella barra degli URL. Questo dovrebbe aprire la Pagina di benvenuto di Nginx , confermando di aver installato e configurato correttamente il server.

Configura Nginx
Non è necessario configurare Nginx al momento dell'installazione. Tuttavia, dovresti conoscere la posizione dei file di configurazione e la directory principale di Nginx nel caso in cui sia necessario modificare la configurazione.
- Directory di configurazione di Nginx:/etc/nginx
- Directory principale di Nginx:/usr/share/nginx/html
- File di configurazione principale/globale:/etc/nginx/nginx.conf
Se desideri modificare il file di configurazione globale , dovresti aprirlo (etc/nginx/nginx.conf ) con un editor di testo e applica le modifiche.

Un caso d'uso comune è la modifica del file di configurazione Nginx per reindirizzare il traffico HTTP su HTTPS.