Nginx

Nginx omdirigera HTTP till HTTPS

Nginx omdirigera HTTP till HTTPS
Nginx, uttalad som "Engine x", är en gratis, öppen källkod-baserad Linux-högpresterande webb och en omvänd proxyserver som ansvarar för att hantera och hantera belastningen på den största webbplatstrafiken på internet. Nginx är ett kraftfullt omdirigeringsverktyg som enkelt kan konfigureras på ditt system för att omdirigera mindre säker eller okrypterad HTTP-webbtrafik till en krypterad och säker HTTPS-webbserver. Om du är systemadministratör eller utvecklare använder du Nginx-servern regelbundet.

I den här artikeln kommer vi att arbeta med hur man omdirigerar webbtrafiken från HTTP till en säker HTTPS i Nginx.

Svaren och förfrågningarna returneras i form av klartext i HTTP, medan HTTPS använder SSL / TLS för att kryptera kommunikationen mellan klienten och serversystemet. På grund av många anledningar används HTTPS över HTTP, som listas nedan:

Det föredras att omdirigera trafik HTTP till HTTPS i Nginx i ett separat serverblock för varje webbplatsversion. Det rekommenderas också att undvika omdirigering av trafik med "if" -riktningen, vilket kan orsaka ovanligt beteende hos servern.

Omdirigera all trafik från HTTP till HTTPS

Lägg till följande ändringar i Nginx-konfigurationsfilen för att omdirigera all trafik från HTTP till HTTPS-version:

server
lyssna 80 default_server;
server namn _;
returnera 301 https: // $ host $ request_uri;

Nedan har vi utarbetat varje ovannämnda term:

Lyssna 80 default_server - detta kommer att signalera ditt system som fångar all HTTP-trafik på Port 80.
Servernamn _ - det är domänen som matchar alla värdnamn.

Returnera 301 https: // $ host $ request_uri - detta berättar för dina sökmotorer som omdirigerar det permanent. Den anger att variabeln $ host innehåller domännamnen.

När du har ändrat konfigurationsinställningarna måste du ladda om Nginx-tjänsterna på ditt system. Så ladda om dina Nginx-tjänster med följande kommando:

$ sudo systemctl ladda om nginx

Omdirigera HTTP till HTTPS-version för angiven domän i Nginx

När du har installerat SSL-certifikatet på din domän har du två serverblockalternativ för den här domänen. Ett block är för HTTP-versionen som lyssnar på port 80, och den andra versionen är HTTPS på port 443. För att omdirigera en enda webbplatsdomän från HTTP till HTTPS måste du dock öppna Nginx-konfigurationen. Du kan hitta den här konfigurationsfilen i katalogen / etc / nginx / sites. I vilket fall som helst, om du inte hittade den här filen kan du söka efter den med / etc / nginx / nginx.conf, / usr / local / nginx / conf eller / usr / local / etc / nginx, och utför sedan följande ändringar i den här filen:

server
lyssna 80;
server_name domännamn.com www.domän namn.com;
returnera 301 https: // domännamn.com $ request_uri;

Låt oss förstå ovanstående kod rad för rad.
Lyssna 80 - med hjälp av port 80 kommer servern att lyssna efter alla angivna domäner för inkommande anslutningar.

Server_name domännamn.com www.domän namn.com - det anger domännamnen. Så ersätt det med ditt webbplatsdomännamn som du vill omdirigera.

Returnera 301 https: // domännamn.com $ request_uri - det flyttar trafiken till HTTPS-versionen av webbplatsen. Variabeln $ request_uri används för den fullständiga ursprungliga begäran URI där även argument ingår.

Med hjälp av följande metod kan du omdirigera trafik till HTTPS www-versionen till webbplatsens icke-www-version. Det rekommenderas att skapa en omdirigering i ett separat serverblock för både versioner som inte är www och www.

Låt oss förklara med ett exempel. Om du vill omdirigera www HTTPS-förfrågningarna till den icke-www-versionen följer du följande konfiguration:

server
lyssna 80;
server_name domännamn.com www.domän namn.com;
returnera 301 https: // domännamn.com $ request_uri;

server
lyssna på 443 ssl http2;
servernamn www.domän namn.com;
# ... annan kod
returnera 301 https: // domännamn.com $ request_uri;

server
lyssna på 443 ssl http2;
server_name domännamn.com;
# ... annan kod

Ersätt domännamnet med din domän, som www.linuxhint.com.

Slutsats

Vi har diskuterat hur man omdirigerar trafik från HTTP-version till HTTPS på Nginx-servern. Genom att ändra Nginx-konfigurationsfilinställningen kan du enkelt omdirigera trafik till HTTPS antingen för en viss domän eller omdirigera alla. Denna metod, som vi nämnde i den här artikeln, kan hjälpa dig att göra din webbplats säkrare genom att göra ändringar i användarupplevelsen.

Hur man använder AutoKey för att automatisera Linux-spel
AutoKey är ett verktyg för desktopautomatisering för Linux och X11, programmerat i Python 3, GTK och Qt. Med hjälp av dess skript och MACRO-funktional...
Hur man visar FPS-räknare i Linux-spel
Linux-spel fick ett stort tryck när Valve tillkännagav Linux-stöd för Steam-klient och deras spel 2012. Sedan dess har många AAA- och indiespel tagit ...
Hur man laddar ner och spelar Sid Meier's Civilization VI på Linux
Introduktion till spelet Civilization 6 är ett modernt intag av det klassiska konceptet som introducerades i serien Age of Empires-spel. Idén var gans...