Nginx (pronunciato come Engine-X) è un software che può fungere sia da server web che da server proxy. Puoi servire contenuti web tramite il server Nginx. Attraverso le funzionalità proxy e proxy inverso del server Nginx, puoi anche usarlo come router. Il bilanciamento del traffico, la memorizzazione nella cache e altre operazioni del server possono essere eseguite dal server Nginx. Puoi installare il server Nginx in qualsiasi server cloud, motore Docker o macchina Linux locale. L'algoritmo del server Nginx è molto vantaggioso per coloro che hanno un server commerciale. Poiché Ubuntu esegue la maggior parte dei server Web a livello globale, puoi installare il server Nginx sulla tua macchina Ubuntu per prestazioni migliori.
Server Web Nginx su Ubuntu Linux
Un server web Nginx configurato che serve sia contenuti statici che dinamici sarà sempre più efficiente di un server Apache simile. Devi aver sentito che Nginx è più veloce del server Apache; beh, non mentono affatto. Il server web Nginx può gestire e servire le risorse più velocemente e mantenere un gran numero di richieste simultanee. Tuttavia, puoi eseguire entrambi i server Apache e Nginx sulla stessa macchina. È necessario specificare un indirizzo IP o una porta diversi per ciascun server Web.
Come accennato in precedenza, il server Nginx può eseguire sia la configurazione del proxy che del proxy inverso; parliamone un po'. Sappiamo tutti che un proxy è un'impostazione generale del server che può nascondere l'identità del client. Nelle impostazioni proxy, il server web non riesce a trovare l'identità del client.
In una configurazione proxy inverso, il client non troverà a quale server si sta connettendo. Ora, il server Nginx esegue le impostazioni del proxy inverso per mantenere il controllo di sicurezza e il traffico in entrata. Poiché il server proxy inverso può essere un sistema di bilanciamento del carico, il server proxy inverso di Nginx può essere utilizzato per mantenere un server Web di grandi dimensioni.
Se il tuo server web ha un milione di utenti, puoi utilizzare la funzione proxy inverso tramite il server Nginx. In questo post vedremo come installare il server Nginx in Ubuntu Linux. Di seguito sono indicate alcune caratteristiche chiave primarie del server Nginx.
- Server leggero
- Richiede memoria insufficiente
- Ottimizzazione della CPU
- Prestazioni massime a bassa potenza
- Server proxy e proxy inverso
- Gateway applicativo
- Supporta tutti i principali protocolli
Passaggio 1:installa Nginx Web Server in Ubuntu Linux
L'installazione del server web Nginx è un processo semplice in Ubuntu. Devi aggiornare il tuo repository software. Quindi installa il server web Nginx eseguendo apt
comando dato di seguito. Innanzitutto, apri la shell del tuo terminale, copia e incolla i seguenti comandi della shell nel tuo terminale Ubuntu.
sudo apt update- -
sudo apt install nginx
Dopo aver installato il server web Nginx, devi avviare il server web sulla tua macchina Ubuntu. Per avviare il server web Nginx, puoi utilizzare il comando systemctl per avviare e controllare lo stato del server.
sudo systemctl start nginx
sudo systemctl status nginx
Ora puoi controllare la versione del tuo server web Nginx sulla tua macchina Ubuntu.
versione
sudo dpkg -l nginx
Passaggio 2:Configura le impostazioni del firewall per il server Nginx
Ubuntu utilizza la protezione firewall Uncomplicated Firewall (UFW) per rendere sicuro il tuo sistema. In questo passaggio, dobbiamo configurare il server web Nginx sul firewall UFW. Dobbiamo aggiungere una regola per consentire al server web Nginx di accettare l'elenco dei firewall.
Innanzitutto, devi abilitare le funzionalità del firewall UFW nella tua macchina Ubuntu. Quindi devi consentire al server web di Nginx le impostazioni UFW. Quindi puoi ricaricare il controllo dello stato della configurazione del tuo firewall UFW. Se hai fatto tutto correttamente, vedrai che viene aggiunta una nuova regola alla configurazione del firewall.
sudo ufw enable
sudo ufw allow 'Nginx HTTP'
sudo ufw reload
sudo ufw status
Fase 3:alimenta il server Web Nginx
Se sei completamente nuovo in Nginx o hai utilizzato il server Web Apache, credo che questo passaggio ti aiuterà a ottenere i comandi fondamentali del server Web Nginx. Dopo aver installato il server Web Nginx, ora puoi utilizzare le seguenti righe di comando del terminale per avviare, arrestare, abilitare, ricaricare e riavviare il server Web Nginx sul tuo computer Ubuntu.
sudo systemctl stop nginx
sudo systemctl start nginx
sudo systemctl enable nginx
sudo systemctl restart nginx
sudo systemctl reload nginx
Di seguito vengono forniti alcuni comandi di base del server Nginx che potrebbero essere utili per mantenere il server Web Nginx su Ubuntu.
Controlla lo stato del server Nginx
nginx -t
Ricarica il server Nginx
nginx -s
Informazioni più dettagliate su Nginx Server
nginx -V
Scarica la configurazione completa del server Nginx
nginx -T
Passaggio 4:carica il server Web Nginx su Ubuntu Linux
Ora in questo passaggio troveremo l'indirizzo web che possiamo usare per caricare il server web Nginx tramite un browser web. Possiamo caricare il server Nginx sull'indirizzo localhost e la porta Nginx predefinita è 80. Tuttavia, possiamo controllare e verificare l'indirizzo Web utilizzando i comandi Net-tool. Se non hai lo strumento net installato nella tua macchina Ubuntu, installalo prima.
sudo apt install net-tools
ifconfig
Come possiamo vedere che l'indirizzo web di localhost è mostrato nella shell, possiamo digitare l'indirizzo e premere il pulsante Invio per caricare la pagina di benvenuto del server web Nginx sulla nostra macchina Ubuntu.
http://127.0.0.1/
Passaggio 5:abilita HTTPS sul server Web
L'indirizzo Web predefinito di qualsiasi server Web è sempre un indirizzo HTTP. Se vuoi rendere il tuo server web più sicuro, puoi generare una chiave CSR autofirmata per il tuo server web. Puoi leggere questo post per saperne di più sulla generazione di una CSR (Richiesta di firma del certificato) in Linux. Tuttavia, puoi individuare il file CSR all'interno di /etc/ssl
directory del tuo filesystem Linux. Innanzitutto, crea una directory in cui archiviare la tua chiave CSR privata, quindi accedi all'autorizzazione di root per il percorso.
sudo mkdir /etc/ssl/private
sudo chmod 700 /etc/ssl/private
Ora, fai una richiesta CSR per il tuo server web Nginx dalla tua macchina Ubuntu. Utilizzare la seguente riga di comando per generare una CSR. Inserisci tutte le informazioni richieste per completare la richiesta di firma del certificato.
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/nginx-selfsigned.key -out /etc/ssl/certs/nginx-selfsigned.crt
Quindi devi configurare il tuo server web Nginx per la certificazione SSL. Puoi farlo modificando lo script di configurazione SSL. Per apportare tale modifica, apri lo script di configurazione SSL utilizzando il tuo editor di script preferito.
sudo gedit /etc/nginx/conf.d/ssl.conf
Ora copia e incolla il seguente script all'interno dello script di configurazione SSL. Quindi salva ed esci dal file.
server {
listen 443 http2 ssl;
listen [::]:443 http2 ssl;
UbuntuPIT http://127.0.0.1/;
ssl_certificate /etc/ssl/certs/nginx-selfsigned.crt;
ssl_certificate_key /etc/ssl/private/nginx-selfsigned.key;
ssl_dhparam /etc/ssl/certs/dhparam.pem;
}
root /usr/share/nginx/html;
location / {
}
error_page 404 /404.html;
location = /404.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
Infine, fai un piccolo sforzo per reindirizzare il tuo server web Nginx da HTTP a HTTPS. Apri lo script di configurazione del reindirizzamento SSL, aggiungi il seguente script nel file.
sudo vi /etc/nginx/default.d/ssl-redirect.conf
Puoi copiare e incollare la seguente riga nel tuo script di reindirizzamento SSL.
return 301 https://$host$request_uri/;
Ora per vedere l'impatto, riavvia il tuo server web Nginx su Ubuntu.
sudo systemctl restart nginx
Ora visita l'indirizzo web HTTPS del tuo server web Nginx.
https://127.0.0.1
Passaggio 6:personalizza il server Web Nginx su Ubuntu
Finora abbiamo visto come installare, configurare e caricare il server web Nginx; ora vedremo come personalizzare il server web Nginx. Possiamo assegnare un nuovo indirizzo web e una nuova porta allo script di configurazione di Nginx.
Innanzitutto, dobbiamo individuare il percorso di installazione di Nginx, che è /var/www/html
. Non dimenticare di eseguire tutti i comandi come utente root. Supponiamo che il nostro nuovo indirizzo web sia www.mysamplesite101.com
. Qui configureremo le impostazioni di Nginx per aggiungere il nuovo URL al server web di Nginx.
Ora dobbiamo creare una directory per ospitare e aggiungere un nuovo indirizzo URL. Quindi concedi il permesso di accesso alla directory.
sudo mkdir -p /var/www/mysamplesite101.com/html
sudo chown -R $USER:$USER /var/www/mysamplesite101.com/html
sudo chmod -R 755 /var/www/mysamplesite101.com
Quindi apri il file index.html del tuo nuovo indirizzo per aggiungere alcune righe HTML di base per la pagina web. Puoi utilizzare qualsiasi editor di script per modificare index.html
sceneggiatura. Il codice HTML è riportato di seguito; sentiti libero di copiare, incollare e sostituire l'indirizzo web.
sudo gedit /var/www/mysamplesite101.com/html/index.html
<!DOCTYPE html>
<html>
<head>
<title>Welcome to UbuntuPIT NGINX SERVER TEST!</title>
<style>
body {
width: 35em;
margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif;
}
</style>
</head>
<body>
<h1>Welcome to UbuntuPIT nginx server!</h1>
<p>If you see this page, the nginx web server is successfully installed and working. Further configuration is required.</p>
<p>For online documentation and support please refer to
<a href="https://www.ubuntupit.com/">www.ubuntupit.com</a>.<br/>
Commercial support is available at
<a href="https://www.ubuntupit.com/">www.ubuntupit.com</a>.</p>
<p><em>Thank you for using nginx.</em></p>
</body>
</html>
Devi sapere che il server Web Nginx ha uno script di configurazione in cui sono archiviati tutti i nomi di indirizzi Web e i collegamenti consentiti. Devi inserire il tuo indirizzo URL e la grande autorizzazione all'indirizzo per consentire al server web Nginx di caricare il tuo URL.
sudo gedit /etc/nginx/sites-available/mysamplesite101.com
sudo ln -s /etc/nginx/sites-available/mysamplesite101.com /etc/nginx/sites-enabled/
sudo ln -s /etc/nginx/sites-available/mysamplesite101.com /etc/nginx/sites-enabled/
Innanzitutto, apri lo script dell'indice per vedere l'elenco dei siti disponibili di Nginx sulla tua macchina Ubuntu. Quindi aggiungi il nome del tuo sito e il dominio allo script. Puoi utilizzare le seguenti righe di comando per eseguire il lavoro.
server {
listen 80;
listen [::]:80;
mysamplesite101.com mysamplesite101.com;
root /var/www/mysamplesite101.com;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}
Ora riavvia il server web Nginx sulla tua macchina Ubuntu.
sudo systemctl restart nginx
nginx -t
Ecco alcuni indirizzi di directory cruciali del server Web Nginx che potrebbero aiutarti a individuare e modificare lo script di configurazione, l'elenco dei siti disponibili, il registro degli errori e l'accesso lungo su Ubuntu.
Ora digita il tuo URL personalizzato nella barra degli indirizzi del tuo browser web. Se riesci a caricare la pagina seguente, la tua configurazione funziona perfettamente.
/etc/nginx/nginx.conf
/etc/nginx/sites-available
/etc/nginx/sites-enabled
/var/log/nginx/access.log
/var/log/nginx/error.log
Rimuovi il server Web Nginx da Ubuntu Linux
Diversi motivi specifici potrebbero indurti a rimuovere il tuo server web Nginx dalla tua macchina Ubuntu; tuttavia, se desideri disinstallare e rimuovere il server Web Nginx e i suoi file di configurazione dal tuo computer. Innanzitutto, è necessario interrompere l'avanzamento dell'esecuzione del server Nginx sulla macchina. Segui i comandi del terminale per interrompere tutti i servizi Nginx sulla tua macchina Ubuntu.
service nginx quit
systemctl quit nginx
Ora usa i seguenti comandi apt per disinstallare il server web Nginx dalla tua macchina.
sudo apt-get remove nginx-full nginx-common
sudo apt-get purge nginx nginx-common
Al termine del processo di disinstallazione, puoi utilizzare le seguenti righe di comando del terminale per rimuovere le directory di configurazione di Nginx dalla tua macchina Ubuntu.
sudo apt-get autoremove
rm -rf /etc/nginx
Suggerimento aggiuntivo:abilita HTTP2 per Nginx Server
Poiché hai a che fare con una configurazione del server, potresti essere interessato a qualcosa che può aumentare la velocità di caricamento del tuo sito. Mentre il protocollo HTTP tradizionale carica i file individualmente dal server, il protocollo HTTP2 può combinare e caricare tutte le risorse dal tuo server come un file binario combinato. Utilizzando il metodo HTTP2, puoi aumentare la velocità del tuo server, ridurre il tempo di caricamento e correggere l'errore di timeout.
Parole finali
Prima di installare il server Nginx nella tua macchina Ubuntu, assicurati di aver effettivamente bisogno del server Nginx per il tuo sito Web o per la tua attività locale. Puoi anche controllare le funzionalità di Nginx plus. Se sei un appassionato di server web Nginx, puoi leggere questo post per conoscere le cose essenziali sul server web Nginx.
Ho dimostrato i pensieri fondamentali di un proxy e di un server proxy inverso nell'intero post. Ho anche descritto i passaggi su come installare e configurare il server web Nginx su Ubuntu. Puoi anche installare il server Nginx sul tuo server Ubuntu.
Se ami questo post, condividilo con i tuoi amici e la comunità Linux. Ti invitiamo anche a scrivere le tue opinioni nella sezione commenti.