GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come configurare i blocchi del server Nginx in Ubuntu 18.04 LTS

Nella nostra guida precedente, abbiamo discusso su come configurare gli host virtuali Apache in Ubuntu 18.04 LTS . Oggi, in questa guida, impareremo a configurare i blocchi del server Nginx in Ubuntu 18.04. I blocchi Server sono simili agli host virtuali in Apache che ti aiutano a ospitare più siti Web/domini su un singolo server. L'indirizzo IP della mia casella di prova è 192.168.225.24 e il nome host è ubuntuserver .

Imposta i blocchi del server Nginx in Ubuntu 18.04 LTS

Assicurati di aver aggiornato il tuo sistema Ubuntu alla versione più recente.

$ sudo apt-get update

1. Installa il server web Nginx 

Per installare il server web Nginx su Ubuntu, esegui:

$ sudo apt-get install nginx

Una volta installato Nginx, verifica se funziona o meno sfogliando la pagina di test di nginx nel browser.

Apri il tuo browser web e puntalo a http://IP_Address o http://localhost . Dovresti vedere una pagina come quella di seguito.

Bene! Il server web Nginx è attivo e funzionante!!

2. Crea una directory web per ogni host

Creerò due blocchi Server, ovvero otechnix1.lan e otechnix2.lan .

Creiamo una directory per il primo blocco server ostechnix1.lan. Questa directory è necessaria per memorizzare i dati dei nostri blocchi server.

Per farlo, inserisci:

$ sudo mkdir -p /var/www/html/ostechnix1.lan/public_html

Allo stesso modo, crea una directory per il secondo blocco server ostechnix2.lan come mostrato di seguito.

$ sudo mkdir -p /var/www/html/ostechnix2.lan/public_html

Le due directory precedenti sono di proprietà dell'utente root. Dobbiamo cambiare la proprietà all'utente normale.

Per farlo, esegui:

$ sudo chown -R $USER:$USER /var/www/html/ostechnix1.lan/public_html
$ sudo chown -R $USER:$USER /var/www/html/ostechnix2.lan/public_html

Qui, $USER fa riferimento all'utente attualmente connesso.

Quindi, imposta i permessi di lettura sulla directory principale di Nginx, ad esempio /var/www/html/ usando il comando:

$ sudo chmod -R 755 /var/www/html/

Lo facciamo perché abbiamo già creato una directory separata per ogni blocco di server per la memorizzazione dei loro dati. Quindi abbiamo reso la directory radice di Nginx in sola lettura per tutti gli utenti tranne l'utente root.

Abbiamo creato le directory richieste per memorizzare i dati di ogni blocco di server, impostare le autorizzazioni appropriate. Ora è il momento di creare alcune pagine di esempio che verranno servite da ciascun blocco di server.

3. Crea pagine web dimostrative per ogni host

Creiamo una pagina di esempio per il sito ostechnix1.lan. Per farlo, esegui:

$ sudo vi /var/www/html/ostechnix1.lan/public_html/index.html

Aggiungi le seguenti righe:

<html>
 <head>
 <title>www.ostechnix.lan</title>
 </head>
 <body>
 <h1>Hello, This is a test page for ostechnix1.lan website</h1>
 </body>
</html>

Salva e chiudi il file.

Allo stesso modo, crea una pagina di esempio per il sito ostechnix2.lan:

$ sudo vi /var/www/html/ostechnix2.lan/public_html/index.html

Aggiungi le seguenti righe:

<html>
 <head>
 <title>www.ostechnix.lan</title>
 </head>
 <body>
 <h1>Hello, This is a test page for ostechnix2.lan website</h1>
 </body>
</html>

Salva e chiudi il file.

4. Crea un file di configurazione per ogni host

Successivamente, dobbiamo creare file di configurazione per ogni blocco di server. Per prima cosa, facciamolo per il sito ostechnix1.lan.

Copia il contenuto del file di configurazione del blocco del server predefinito nei nuovi file del blocco del server come di seguito.

$ sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/ostechnix1.lan.conf
$ sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/ostechnix2.lan.conf

Quindi, modifica otechnix.lan1.conf file:

$ sudo vi /etc/nginx/sites-available/ostechnix1.lan.conf

Apporta le modifiche necessarie nel nome_server e root direttive da abbinare al primo nome di dominio. Tutte le modifiche sono mostrate in grassetto di seguito.

# Default server configuration
#
server {
listen 80 default_server;
listen [::]:80 default_server;

# SSL configuration
#
# listen 443 ssl default_server;
# listen [::]:443 ssl default_server;
#
# Note: You should disable gzip for SSL traffic.
# See: https://bugs.debian.org/773332
#
# Read up on ssl_ciphers to ensure a secure configuration.
# See: https://bugs.debian.org/765782
#
# Self signed certs generated by the ssl-cert package
# Don't use them in a production server!
#
# include snippets/snakeoil.conf;

root /var/www/html/ostechnix1.lan/public_html;

# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html;

server_name ostechnix1.lan www.ostechnix1.lan;

location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
}

Salva e chiudi il file.

Quindi, modifica otechnix2.lan.conf file:

$ sudo vi /etc/nginx/sites-available/ostechnix2.lan.conf

Apporta le modifiche necessarie nel nome_server e root direttive da riflettere al secondo nome di dominio. Tutte le modifiche sono mostrate in grassetto.

# Default server configuration
#
server {
listen 80;
listen [::]:80;

# SSL configuration
#
# listen 443 ssl default_server;
# listen [::]:443 ssl default_server;
#
# Note: You should disable gzip for SSL traffic.
# See: https://bugs.debian.org/773332
#
# Read up on ssl_ciphers to ensure a secure configuration.
# See: https://bugs.debian.org/765782
#
# Self signed certs generated by the ssl-cert package
# Don't use them in a production server!
#
# include snippets/snakeoil.conf;

root /var/www/html/ostechnix2.lan/public_html;

# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html;

server_name ostechnix2.lan www.ostechnix2.lan;

location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
}

Come avrai notato nella configurazione precedente, ho apportato un'altra modifica. Ho rimosso il server_predefinito riga nella ascolta 80; e ascolta [::]:80; direttive nel secondo file del blocco server (otechnix2.lan). Perché abbiamo già utilizzato server_predefinito riga nel primo blocco del server, quindi l'abbiamo rimosso dal secondo file per evitare conflitti.

Salva/chiudi il file.

5. Abilita i blocchi del server Nginx

Dopo aver apportato le modifiche necessarie, disabilita il file di configurazione del blocco del server predefinito e abilita tutti i file di configurazione del blocco del server appena creati come mostrato di seguito.

$ sudo rm /etc/nginx/sites-enabled/default
$ sudo ln -s /etc/nginx/sites-available/ostechnix1.lan.conf /etc/nginx/sites-enabled/
$ sudo ln -s /etc/nginx/sites-available/ostechnix2.lan.conf /etc/nginx/sites-enabled/

Riavvia il servizio Nginx per rendere effettive le modifiche.

$ sudo systemctl restart nginx

Questo è tutto. Abbiamo configurato correttamente i blocchi del server in Nginx. Andiamo avanti e controlliamo se funzionano o meno.

6. Testare i blocchi del server Nginx

Apri il file /etc/hosts in qualsiasi editor:

$ sudo vi /etc/hosts

Aggiungi tutti i tuoi siti Web/domini virtuali uno per uno come di seguito.

[...]
192.168.225.24   ostechnix1.lan
192.168.225.24   ostechnix2.lan
[...]

Si noti che se si desidera accedere ai blocchi del server da qualsiasi sistema remoto, è necessario aggiungere le righe precedenti nel file /etc/hosts di ciascun sistema remoto. Salva e chiudi il file.

Apri il tuo browser web e puntalo a http://otechnix1.lan o http://otechnix2.lan .

Pagina di prova ostechnix1.lan:

Pagina di prova di otechnix2.lan:

Congratulazioni! Ora puoi accedere a tutti i tuoi siti Web/domini. D'ora in poi, puoi caricare i dati e servirli da diversi siti web.


Ubuntu
  1. Come configurare i blocchi del server Nginx su Ubuntu 18.04

  2. Come installare Nginx su Ubuntu 20.04

  3. Come configurare iSCSI Storage Server su Ubuntu 18.04 LTS

  4. Come configurare il server Rsyslog su Ubuntu 18.04 LTS

  5. Come configurare un server di archiviazione iSCSI su Ubuntu 20.04 LTS

Come eseguire l'aggiornamento a Ubuntu 20.04 LTS Server

Come configurare l'ultimo MySQL su Ubuntu 20.04 LTS

Come configurare Git Server su Ubuntu 20.04

Come configurare il server Rsyslog su Ubuntu

Come configurare il server DHCP su Ubuntu

Come installare Nginx su Ubuntu 18.04 LTS