GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come installare e configurare Nginx su CentOS 7

Cos'è Nginx?

Nginx (pronunciato "motore X") è un'alternativa ad Apache ed è considerato uno dei server Web HTTP più popolari al mondo. A differenza di Apache, Nginx tende a consumare meno risorse e migliora la reattività del server. Il suo design basato sugli eventi è ciò che lo rende favorevole alle risorse.

Soprattutto, consente agli amministratori di impostare configurazioni avanzate e può gestire un carico elevato di connessioni simultanee. Oltre ad essere adatto per un server Web HTTP, Nginx funziona anche come proxy inverso, bilanciatore del carico e server di posta standard.

In questo articolo imparerai come installare e configurare Nginx su CentOS 7 .

Prerequisiti

  • Un server o VM autogestito CentOS
  • Un dominio. Dovrai connettere un dominio al tuo server web Nginx
  • Sudo o root privilegi [[email protetta] ~]
  • SELinux configurato correttamente

Come installare Nginx su CentOS 7

In generale, CentOS è il pacchetto di distribuzione preferito nel settore dell'hosting. Attualmente, CentOS 8 è l'ultima versione, mentre CentOS 7 è supportato fino all'anno 2024.

La procedura di configurazione seguente descrive in dettaglio i passaggi necessari per configurare Nginx su CentOS 7.

Per le istruzioni di installazione per CentOS 8, leggi Come installare Nginx su CentOS 8.

Fase 1:aggiorna gli elenchi dei pacchetti del repository

Per farlo, esegui il seguente comando:

sudo yum -y update

-y è un parametro opzionale. Serve per evitare domande di conferma. Lo useremo molto, come noterete. Se non utilizzi questo parametro, ti verrà chiesto di confermare i tuoi comandi.

Fase 2:installa pacchetti extra per Enterprise Linux (EPEL)

Nginx non è disponibile nei repository standard forniti con il pacchetto CentOS, quindi dovrai installare il repository EPEL sul tuo server. EPEL è gratuito e fornisce numerosi pacchetti open source da installare con Yum.

Per installare EPEL, esegui il seguente comando utilizzando il gestore di pacchetti Yum:

sudo yum install -y epel-release

Fase 3:installa Nginx

Il passaggio numero due ha aggiunto il repository Nginx al tuo server. Ora puoi installare Nginx eseguendo il seguente comando yum:

sudo yum –y install nginx

Fase 4:avvia il servizio Nginx

La tua istanza di Nginx è installata, ma non si avvia automaticamente.

Per avviare Nginx, esegui:

sudo systemctl start nginx

Dopo aver premuto invio, non otterrai un valore di ritorno. Tuttavia, Nginx avrebbe dovuto iniziare. Per verificarne lo stato, esegui:

sudo systemctl status nginx

Dovrebbe esserci un pezzo di testo verde che dice "attivo (in esecuzione)." Se non riesci a trovarlo, la tua istanza di Nginx potrebbe non essere stata avviata correttamente.

Passaggio 5:configura Nginx per l'avvio all'avvio

La maggior parte degli amministratori vorrà assicurarsi che NGINX si avvii automaticamente ogni volta che il server si riavvia. Per configurarlo, esegui:

sudo systemctl enable nginx

Passaggio 6:configura il firewall per consentire il traffico

CentOS 7 abilita i firewall per impostazione predefinita e blocca l'accesso alle porte 80 e 443. Blocca tutti i pacchetti HTTPS e HTTP in entrata da Nginx.

Per consentire il traffico HTTP e HTTPS, esegui i seguenti comandi:

firewall-cmd --zone=public --permanent --add-service=http
firewall-cmd --zone=public --permanent --add-service=https
firewall-cmd --reload

Dopo ogni comando, dovresti vedere success indicando che il comando è stato eseguito correttamente.

Passaggio 7:verifica l'installazione di Nginx

Il modo più semplice per verificare se Nginx funziona correttamente è visitare l'indirizzo IP pubblico del tuo server. Basta aprire il browser web e visitare http://server_IP_or_domain_name /

Innanzitutto, trova l'indirizzo IP pubblico del tuo server.

ip a

Il nostro indirizzo IP è 192.168.122.1/24 . Copia il tuo indirizzo IP e incollalo nel tuo browser. Questo dovrebbe caricare il Benvenuto in Nginx pagina.

Come risolvere l'errore "test fallito"

Se ricevi un "test fallito" messaggio di errore per il file nginx.conf, potresti riscontrare un problema con l'indirizzo IP.

Il servizio Nginx ascolta IPv4 e IPv6, per impostazione predefinita. Il test fallirà se il tuo server non supporta IPv6. Tuttavia, questo può essere risolto modificando il file di configurazione principale.

Apri il file di configurazione principale, /etc/nginx/nginx.conf . Trova e commenta la seguente riga:

listen [::]:80 default_server;

Basta aggiungere "#" all'inizio della riga. Dovrebbe assomigliare a questo:

# listen [::]:80 default_server;

Salva le modifiche apportate e ricarica il servizio Nginx.

sudo systemctl reload nginx

Cerca l'indirizzo IP del tuo server nel tuo browser. Dovresti vedere la pagina di test di Nginx predefinita.

File di configurazione e root di Nginx

Avrai sicuramente bisogno di conoscere la posizione dei file di configurazione di Nginx e la directory principale del server Nginx predefinita.

Blocchi server aggiuntivi

Su Apache, gli amministratori utilizzano host virtuali per eseguire più siti Web. Con Nginx, l'esecuzione di più siti Web su un unico server viene eseguita con blocchi di server.

Ulteriori blocchi server vengono aggiunti creando nuovi file di configurazione con estensione .conf. Inserisci questi file in /etc/nginx/conf.d e verranno caricati ogni volta che Nginx si avvia.

Root del server Nginx predefinito

La directory principale del server Nginx predefinita è /usr/share/nginx . Questo è specificato nel file di configurazione del blocco del server predefinito, che si trova in /etc/nginx/conf.d/default.conf .

La directory principale dei documenti del server predefinita che contiene i file Web è usr/share/nginx/html .

Configurazione globale

Le configurazioni globali possono essere modificate modificando il file di configurazione Nginx principale che si trova in /etc/nginx/nginx.conf . Questo file di configurazione è suddiviso in contesti. Per impostazione predefinita, puoi identificare tre (3) contesti.

  1. Eventi sono impostazioni globali che definiscono come Nginx gestisce le connessioni in generale.
  2. HTTP definisce come il server gestisce le connessioni HTTP e HTTPS.
  3. Server è definito all'interno del contesto HTTP. Specifica le porte del server, la radice del documento, ecc.

Puoi sempre aggiungere ulteriori contesti.

Gestire Nginx – Attività comuni

Interrompi Nginx

Per fermare un server Nginx, esegui:

sudo systemctl stop nginx

Riavvia Nginx

Per riavviare il servizio Nginx, esegui:

sudo systemctl restart nginx

Ricarica Nginx

Se hai apportato alcune modifiche alle modifiche alla configurazione principale di Nginx. Devi ricaricare il server per propagare le modifiche.

sudo systemctl reload nginx

Disabilita l'avvio automatico all'avvio

Se non vuoi che Nginx si avvii automaticamente all'avvio, esegui:

sudo systemctl disable nginx

Configurazione di una nuova directory

Se stai ospitando più siti Web, una buona regola pratica è seguire le convenzioni di denominazione standard. Usiamo la denominazione standard di cPanel e creiamo una directory.

sudo mkdir -p /var/www/yourdomain.com/public_html

La prossima cosa di cui hai bisogno è una pagina indice. Questo ti aiuterà a testare la configurazione.

sudo nano /var/www/yourdomain.com/public_html/index.html

A scopo di test, inserisci una singola riga di testo in index.html. Salva e chiudi il file.

Modifica le autorizzazioni dei file Linux, in modo che i dati siano accessibili online.

sudo chmod 755 /var/www/yourdomain.com/public_html

Prova ad aprire la pagina index.html. Dovrebbe essere disponibile online.


Cent OS
  1. Come installare e configurare Nginx su CentOS 8

  2. Come installare e configurare Redis su CentOS 7

  3. Come installare e configurare GitLab su CentOS 7

  4. Come installare e configurare Redmine su CentOS 7

  5. Come installare e configurare CyberPanel su CentOS 8

Come installare e configurare ISPConfig CP su CentOS 7

Come installare e configurare ownCloud su CentOS 7

Come installare e configurare Samba su CentOS 8

Come installare e configurare Fail2ban su CentOS 8

Come installare e configurare HAproxy su CentOS 6

Come installare e configurare GlusterFS su CentOS 7/CentOS 8