Nginx

Nginx Redirect HTTP til HTTPS

Nginx Redirect HTTP til HTTPS
Nginx, uttalt som "Engine x", er et gratis, åpen kildekode-basert Linux med høy ytelse og en omvendt proxy-server som er ansvarlig for å administrere og håndtere belastningen på den største nettstrafikken på internett. Nginx er et kraftig omdirigeringsverktøy som enkelt kan konfigureres på systemet ditt for å omdirigere den mindre sikre eller ukrypterte HTTP-nettrafikken til en kryptert og sikret HTTPS-webserver. Hvis du er systemadministrator eller utvikler, bruker du Nginx-serveren regelmessig.

I denne artikkelen vil vi jobbe med hvordan du omdirigerer nettrafikken fra HTTP til en sikker HTTPS i Nginx.

Svarene og forespørslene returneres i form av ren tekst i HTTP, mens HTTPS bruker SSL / TLS for å kryptere kommunikasjonen mellom klienten og serversystemet. På grunn av mange grunner brukes HTTPS over HTTP, som er oppført nedenfor:

Det foretrekkes å omdirigere trafikk HTTP til HTTPS i Nginx i en egen serverblokk for hver sideversjon. Det anbefales også å unngå omdirigering av trafikk i "if" -retningen, noe som kan føre til uvanlig oppførsel fra serveren.

Omdiriger all trafikk fra HTTP til HTTPS

Legg til følgende endringer i Nginx-konfigurasjonsfilen for å omdirigere all trafikk fra HTTP til HTTPS-versjon:

server
hør 80 standard_server;
Server navn _;
returner 301 https: // $ host $ request_uri;

Nedenfor har vi utdypet hvert ovennevnte begrep:

Lytt 80 default_server - dette signaliserer systemet ditt som fanger all HTTP-trafikk på Port 80.
Servernavn _ - det er domenet som vil samsvare med ethvert vertsnavn.

Returner 301 https: // $ host $ request_uri - dette forteller søkemotorer som omdirigerer det permanent. Den spesifiserer at variabelen $ host har domenenavnene.

Når du endrer konfigurasjonsinnstillingene, må du laste Nginx-tjenestene på nytt på systemet ditt. Så last inn Nginx-tjenestene dine ved å bruke følgende kommando:

$ sudo systemctl last inn nginx på nytt

Omdiriger HTTP til HTTPS-versjon for spesifisert domene i Nginx

Etter at du har installert SSL-sertifikatet på domenet ditt, vil du ha to serverblokkeringsalternativer for dette domenet. En blokk er for HTTP-versjonen som lytter på port 80, og den andre versjonen er HTTPS på port 443. For å omdirigere et enkelt nettstedsdomene fra HTTP til HTTPS, må du imidlertid åpne Nginx-konfigurasjonen. Du kan finne denne konfigurasjonsfilen i katalogen / etc / nginx / sites. I alle fall, hvis du ikke fant denne filen, kan du søke etter den med / etc / nginx / nginx.conf, / usr / local / nginx / conf eller / usr / local / etc / nginx, og utfør deretter følgende endringer i denne filen:

server
hør 80;
servernavn domenenavn.com www.domenenavn.com;
returner 301 https: // domenenavn.com $ request_uri;

La oss forstå kodene ovenfor linje for linje.
Lytt 80 - ved hjelp av port 80 vil serveren lytte etter alle angitte domener for innkommende tilkoblinger.

Server_name domain name.com www.domenenavn.com - det spesifiserer domenenavnene. Så erstatt det med domenenavnet på nettstedet du vil omdirigere.

Returner 301 https: // domenenavn.com $ request_uri - den flytter trafikken til HTTPS-versjonen av nettstedet. Variablen $ request_uri brukes til hele den opprinnelige URI-forespørselen der argumenter også er inkludert.

Ved hjelp av følgende metode kan du omdirigere trafikk til HTTPS www-versjonen til ikke-www-versjonen av nettstedet. Det anbefales å opprette en omdirigering i en egen serverblokk for både ikke-www- og www-versjoner.

La oss forklare med et eksempel. Hvis du vil omdirigere www HTTPS-forespørslene til ikke-www-versjonen, vil du følge følgende konfigurasjon:

server
hør 80;
servernavn domenenavn.com www.domenenavn.com;
returner 301 https: // domenenavn.com $ request_uri;

server
hør 443 ssl http2;
servernavn www.domenenavn.com;
# ... annen kode
returner 301 https: // domenenavn.com $ request_uri;

server
hør 443 ssl http2;
servernavn domenenavn.com;
# ... annen kode

Erstatt domenenavnet med domenet ditt, som www.linuxhint.com.

Konklusjon

Vi har diskutert hvordan du omdirigerer trafikk fra HTTP-versjon til HTTPS på Nginx-serveren. Ved å endre Nginx-konfigurasjonsfilinnstillingen, kan du enkelt omdirigere trafikk til HTTPS enten for et spesifisert domene eller omdirigere alt. Denne metoden, som vi har nevnt i denne artikkelen, kan hjelpe deg med å gjøre nettstedet ditt sikrere ved å gjøre endringer i brukeropplevelsen.

Hvordan laste ned og spille Sid Meier's Civilization VI på Linux
Introduksjon til spillet Civilization 6 er et moderne syn på det klassiske konseptet som ble introdusert i serien av Age of Empires-spillene. Ideen va...
Hvordan installere og spille Doom på Linux
Introduksjon til Doom Doom-serien stammer fra 90-tallet etter utgivelsen av den originale Doom. Det ble en øyeblikkelig suksess, og fra den tiden og u...
Vulkan for Linux-brukere
Med hver nye generasjon grafikkort ser vi spillutviklere skyve grensene for grafisk troskap og komme et skritt nærmere fotorealisme. Men til tross for...