[LINUX] - NGINX FRONTEND con due backend e reverse proxy con ssl offloading
Sommario:
In questa guida, spiegheremo come reindirizzare il traffico HTTP su HTTPS in Nginx.
Nginx pronunciato "engine x" è un server HTTP e proxy inverso gratuito, open source e ad alte prestazioni, responsabile della gestione del carico di alcuni dei più grandi siti su Internet.
A differenza di HTTP, dove le richieste e le risposte vengono inviate e restituite in testo normale, HTTPS utilizza TLS / SSL per crittografare la comunicazione tra il client e il server.
I vantaggi dell'utilizzo di HTTPS su HTTP sono numerosi, ad esempio:
- Tutti i dati sono crittografati in entrambe le direzioni. Di conseguenza, le informazioni sensibili non possono essere lette se intercettate. Google Chrome e tutti gli altri browser popolari contrassegneranno il tuo sito Web come sicuro. HTTPS ti consente di utilizzare il protocollo HTTP / 2, che migliora significativamente le prestazioni del sito. Google favorisce i siti Web HTTPS. Il tuo sito si posizionerà meglio se offerto tramite
Il metodo preferito per reindirizzare HTTP a HTTPS in Nginx è configurare un blocco server separato per ogni versione del sito. È necessario evitare il reindirizzamento del traffico utilizzando la direttiva if, poiché potrebbe causare un comportamento imprevedibile del server.
Reindirizza HTTP a HTTPS per sito
Per reindirizzare un singolo sito Web su HTTPS, aprire il file di configurazione del dominio e apportare le seguenti modifiche:
server { listen 80; listen:80; server_name linuxize.com www.linuxize.com; return 301 https://linuxize.com$request_uri; }
Analizziamo il codice riga per riga:
-
listen 80
- Il blocco server ascolterà le connessioni in entrata sulla porta 80 per il dominio specificato.server_name linuxize.com www.linuxize.com
- Specifica i nomi di dominio del blocco server. Assicurati di sostituirlo con il tuo nome di dominio.return 301
- Reindirizza il traffico alla versione HTTPS del sito. La variabile$request_uri
è l'URI della richiesta originale completa, inclusi gli argomenti.
Di solito, vorrai anche reindirizzare la versione HTTPS www del sito su non-www o viceversa. Il modo consigliato per eseguire il reindirizzamento è creare un blocco server separato per entrambe le versioni www e non www.
Ad esempio, per reindirizzare le richieste www HTTPS a non www, utilizzare la seguente configurazione:
server { listen 80; listen:80; server_name linuxize.com www.linuxize.com; return 301 https://linuxize.com$request_uri; } server { listen 443 ssl http2; server_name www.linuxize.com; #… other code return 301 https://linuxize.com$request_uri; } server { listen 443 ssl http2; server_name linuxize.com; #… other code }
Reindirizzare tutti i siti su HTTPS
Se tutti i siti Web ospitati sul server sono configurati per utilizzare HTTPS e non si desidera creare un blocco server HTTP separato per ciascun sito, è possibile creare un singolo blocco server HTTP generico. Questo blocco reindirizzerà tutte le richieste HTTP ai blocchi HTTPS appropriati.
Per creare un unico blocco HTTP catch-all che reindirizzerà i visitatori alla versione HTTPS del sito aprire il file di configurazione Nginx e apportare le seguenti modifiche:
server { listen 80 default_server; listen:80 default_server; server_name _; return 301 https://$host$request_uri; }
Analizziamo il codice riga per riga:
-
listen 80 default_server
- Imposta questo blocco server come blocco predefinito (catch-all) per tutti i domini senza eguali.server_name _
-_
è un nome di dominio non valido che non corrisponde mai a nessun nome di dominio reale.return 301
- Reindirizza il traffico al blocco server HTTPS corrispondente con il codice di stato 301 (Spostato permanentemente). La variabile$host
contiene il nome di dominio della richiesta.
Ad esempio, se il visitatore apre
http://example.com/page2
nel browser, Nginx reindirizzerà la richiesta a
https://example.com/page2
.
Se possibile, preferisci creare un reindirizzamento in base al dominio anziché un reindirizzamento globale da HTTP a
Conclusione
Dopo aver installato un certificato SSL sul tuo sito Web, devi reindirizzare il traffico HTTP su
In Nginx, il modo preferito per reindirizzare HTTP a HTTPS è creare un blocco server separato ed eseguire il reindirizzamento 301.
nginxComcast reindirizza gli URL non validi alle pagine con pubblicità

Gli abbonati Comcast verranno ora indirizzati a una pagina con pubblicità se tentano di raggiungere un sito Web che non esiste.
Differenza tra protocollo HTTP e HTTPS

Evoluzione dell`HTTP, come funziona HTTPS e la differenza tra HTTP e HTTPS in termini semplici spiegati. HTTP Vs HTTPS o Hypertext Transfer Protocol su Secure Socket Layer discusso.
Come scoprire o controllare dove il link o l`URL reindirizza a

Questi strumenti online gratuiti ti aiutano a trovare l`URL di cui reindirizzare vuoi controllare va alla destinazione desiderata o no. Trova dove un determinato URL o link reindirizza a