GNU/Linux >> Linux Esercitazione >  >> Linux

Come installare NGINX su Ubuntu 18.04

NGINX è un server web ad alte prestazioni utilizzato in particolare per la gestione di file statici e come proxy inverso. grazie alla sua versatilità NGINX può essere utilizzato in ogni situazione. In questa guida vedrai come installarlo sul tuo server e come configurarlo per due o più domini.

Per prima cosa, connettiti al tuo server tramite una connessione SSH. Se non l'hai ancora fatto, ti consigliamo di seguire la nostra guida per connetterti in modo sicuro con SSH. In caso di server locale, vai al punto successivo e apri il terminale del tuo server.

Installazione di NGINX

Aggiorna i repository di distribuzione per essere sicuro di scaricare l'ultima versione di NGINX:

$ sudo apt update

Esegui il seguente comando per installare il pacchetto NGINX:

$ sudo apt install nginx

Una volta completata l'installazione, avvia il servizio e installalo sul sistema:

$ sudo systemctl start nginx

$ sudo systemctl enable nginx

Configurazione firewall

In caso di un firewall sul tuo sistema, impostalo per abilitare il traffico HTTP e il traffico HTTPS sul tuo computer.

Quando si utilizza il firewall UFW, vengono forniti profili preinstallati per NGINX. Vediamo quindi come abilitarli.

Per verificare i profili disponibili installati sul firewall UFW, eseguire questo comando:

$ sudo ufw app list

Sullo schermo verrà visualizzato un elenco simile al seguente:

Available applications:

  Dovecot IMAP

  Dovecot POP3

  Dovecot Secure IMAP

  Dovecot Secure POP3

  Nginx Full

  Nginx HTTP

  Nginx HTTPS

  OpenSSH

  Postfix

  Postfix SMTPS

  Postfix Submission

Per consentire il traffico HTTP (porta 80) e HTTPS (porta 443), utilizzare il profilo "Nginx Full".

Controlla le informazioni del tuo profilo come mostrato di seguito:

$ sudo ufw app info "Nginx Full"

Apparirà la descrizione del profilo su schermo:

Profile: Nginx Full

Title: Web Server (Nginx, HTTP + HTTPS)

Description: Small, but very powerful and efficient web server
                Ports:

  80,443/tcp

Dopo aver controllato il profilo sarai pronto per abilitarlo:

$ sudo ufw allow in "Nginx Full"

A questo punto la configurazione di NGINX e del firewall è completata. Testare il server web visitando l'indirizzo http:// o nel caso di un server locale http:// localhost . Se la procedura è stata eseguita correttamente, verrà visualizzata la schermata di NGINX di default.

Configurazione corretta di due domini/siti web:

Di seguito viene mostrato come configurare due host virtuali (chiamati "blocchi server") per avere due spazi web completamente separati. In questo esempio utilizzeremo due domini fittizi:

  • www.tuodominio.com

  • www.tuodominio2.com

Entrambi i record A devono puntare all'indirizzo IP pubblico del tuo server.

Inizia creando tutte le cartelle necessarie per contenere i file pubblici dei tuoi siti web:

$ sudo mkdir /var/www

$ sudo mkdir /var/www/yourdomain.com

$ sudo mkdir /var/www/yourdomain.com/htdocs

$ sudo mkdir /var/www/yourdomain.com/logs
                $ sudo mkdir /var/www/yourdomain2.com

$ sudo mkdir /var/www/yourdomain2.com/htdocs

$ sudo mkdir /var/www/yourdomain2.com/logs

Come contenuto temporaneo, copia la pagina NGINX predefinita nelle cartelle htdocs di ciascun dominio:

$ sudo cp /usr/share/nginx/html/* /var/www/yourdomain.com/htdocs/

$ sudo cp /usr/share/nginx/html/* /var/www/yourdomain2.com/htdocs/

Ora, procedi alla configurazione effettiva di NGINX. NGINX di solito legge tutti i file .conf nella directory /etc/nginx/conf.d/, continua creando due file (uno per dominio), nominandoli:

  • tuodominio_com.conf

  • tuodominio2_com.conf

Utilizza il tuo editor di testo preferito per scrivere la seguente configurazione nel file tuodominio_com.conf:

server {
                        

        listen 80;
                        

        server_name yourdomain.com *.yourdomain.com;
                        

        root /var/www/yourdomain.com/htdocs;
                        

        access_log /var/www/yourdomain.com/logs/access.log main;

        error_log /var/www/yourdomain.com/logs/error.log warn;

}

Ovviamente devi usare una configurazione simile anche per tuodominio2_com.conf:

server {
                        

        listen 80;
                        

        server_name yourdomain2.com *.yourdomain2.com;
                        

        root /var/www/yourdomain2.com/htdocs;
                        

        access_log /var/www/yourdomain2.com/logs/access.log main;

        error_log /var/www/yourdomain2.com/logs/error.log warn;

}

Oltre all'impostazione della cartella principale per i file del dominio virtuale, ci sono anche le impostazioni per configurare i percorsi dei file di log (sia di accesso che di errore) in modo da avere un log per dominio. Normalmente, NGINX salva tutti i log nella directory /var/log/nginx/ ma in caso di dominio multiplo, il risultato potrebbe creare confusione.

I log possono diventare troppo grandi nel tempo se il loro percorso viene modificato., È quindi necessario impostare una rotazione dei file in modo da eliminare i contenuti più vecchi. Per farlo, usa il software logrotate.

Per aggiungere nuovi file di registro nelle impostazioni di logrotate, modificare il file /etc/etc/logrotate.d/nginx:

/var/log/nginx/*log {

    create 0644 nginx nginx

    daily

    rotate 10

    missingok

    notifempty

    compress

    sharedscripts

    postrotate

        /bin/kill -USR1 `cat /run/nginx.pid 2>/dev/null` 2>/dev/null || true

    endscript

}

Come puoi vedere, esiste già una configurazione per i file NGINX in /var /log/nginx. Procedi modificando la prima parte del file come segue:

/var/log/nginx/*log

/var/www/*/logs/* {

    ...

}

Una volta apportata questa modifica, logrotate gestirà tutti i file nelle cartelle logs di /var/www/miodominio.it e /var/www/tuodominio.com (e di tutti gli altri), senza doversi preoccupare di qualsiasi altro dominio che potrebbe essere aggiunto in futuro.

Una volta completato, riavvia il servizio per applicare le modifiche:

$ sudo systemctl reload nginx

Linux
  1. Come installare R su Ubuntu 20.04

  2. Come installare Nginx su Ubuntu 16.04

  3. Come installare Nginx su Ubuntu 18.04

  4. Come installare LEMP su Ubuntu 18.04

  5. Installa Nginx su Ubuntu

Come installare Go in Ubuntu 20.04

Come installare Vai su Ubuntu 22.04

Installa Nginx su Ubuntu 18.04

Come installare Nginx su Ubuntu 14.04

Come installare NGINX su Ubuntu 20.04

Come installare Nginx su Ubuntu 22.04