Nginx

Nginx preusmjerava HTTP na HTTPS

Nginx preusmjerava HTTP na HTTPS
Nginx, izgovara se kao "Engine x", besplatni je Internet s visokim performansama zasnovan na Linuxu i obrnuti proxy poslužitelj koji je odgovoran za upravljanje i rukovanje opterećenjem najvećeg prometa na web stranicama na Internetu. Nginx je moćan alat za preusmjeravanje koji se može lako konfigurirati na vašem sustavu za preusmjeravanje manje sigurnog ili nešifriranog HTTP web prometa na šifrirani i zaštićeni HTTPS web poslužitelj. Ako ste administrator sustava ili programer, tada redovito koristite Nginx poslužitelj.

U ovom ćemo članku raditi na tome kako preusmjeriti web promet s HTTP-a na siguran HTTPS u Nginxu.

Odgovori i zahtjevi vraćaju se u obliku otvorenog teksta u HTTP-u, dok HTTPS koristi SSL / TLS za šifriranje komunikacije između klijenta i poslužiteljskog sustava. Stoga se zbog mnogih razloga HTTPS koristi preko HTTP-a, koji su navedeni u nastavku:

Poželjno je promet HTTP preusmjeriti na HTTPS u Nginxu u zasebnom bloku poslužitelja za svaku verziju web mjesta. Također se preporučuje izbjegavanje preusmjeravanja prometa u smjeru "ako" što može uzrokovati neobično ponašanje poslužitelja.

Preusmjerite sav promet s HTTP-a na HTTPS

U konfiguracijsku datoteku Nginx dodajte sljedeće promjene kako biste sav promet preusmjerio s HTTP-a na HTTPS verziju:

poslužitelj
preslušajte 80 default_server;
ime_poslužitelja _;
return 301 https: // $ host $ request_uri;

U nastavku smo razradili svaki gore spomenuti pojam:

Listen 80 default_server - ovo će signalizirati vašem sustavu koji hvata sav HTTP promet na portu 80.
Ime_poslužitelja _ - to je domena koja će se podudarati s bilo kojim imenom hosta.

Vrati 301 https: // $ host $ request_uri - ovo govori vašim tražilicama da ga trajno preusmjere. Određuje da varijabla $ host sadrži imena domena.

Nakon što promijenite postavke konfiguracije, morate ponovno učitati Nginx usluge na vašem sustavu. Dakle, ponovo učitajte svoje Nginx usluge pomoću sljedeće naredbe:

$ sudo systemctl ponovno učitajte nginx

Preusmjerite HTTP na HTTPS verziju za navedenu domenu u Nginxu

Nakon instaliranja SSL certifikata na vašu domenu, imat ćete dvije opcije blokova poslužitelja za tu domenu. Jedan blok je za HTTP verziju koja sluša na priključku 80, a druga verzija je HTTPS na priključku 443. Međutim, da biste preusmjerili jednu domenu web mjesta s HTTP-a na HTTPS, morate otvoriti Nginx konfiguraciju. Ovu konfiguracijsku datoteku možete pronaći u direktoriju / etc / nginx / sites-available. U svakom slučaju, ako niste pronašli ovu datoteku, možete je potražiti pomoću / etc / nginx / nginx.conf, / usr / local / nginx / conf ili / usr / local / etc / nginx, a zatim izvršite sljedeće promjene u ovoj datoteci:

poslužitelj
slušati 80;
ime_poslužitelja ime-domene.com www.naziv domene.com;
vrati 301 https: // ime-domene.com $ request_uri;

Razumijemo gornji kod redak po redak.
Slušaj 80 - pomoću porta 80 poslužitelj će preslušati sve dolazne veze navedene domene.

Ime_poslužitelja ime-domene.com www.naziv domene.com - navodi imena domena. Dakle, zamijenite ga imenom domene vašeg web mjesta koje želite preusmjeriti.

Vrati 301 https: // ime-domene.com $ request_uri - premješta promet na HTTPS verziju web mjesta. Varijabla $ request_uri koristi se za puni izvorni URI zahtjeva u koji su također uključeni argumenti.

Koristeći sljedeću metodu, možete preusmjeriti promet na HTTPS www verziju na inačicu web stranice koja nije www. Preporučuje se stvaranje preusmjeravanja u zasebnom bloku poslužitelja za verzije koje nisu www i www.

Objasnimo na primjeru. Ako želite preusmjeriti www HTTPS zahtjeve na inačicu koja nije www, slijedite sljedeću konfiguraciju:

poslužitelj
slušati 80;
ime_poslužitelja ime-domene.com www.naziv domene.com;
vrati 301 https: // ime-domene.com $ request_uri;

poslužitelj
slušajte 443 ssl http2;
ime_poslužitelja www.naziv domene.com;
# ... drugi kod
vrati 301 https: // ime-domene.com $ request_uri;

poslužitelj
slušajte 443 ssl http2;
ime_poslužitelja ime-domene.com;
# ... drugi kod

Zamijenite ime domene svojom domenom, poput www.linuxhint.com.

Zaključak

Raspravljali smo o tome kako preusmjeriti promet s HTTP verzije na HTTPS na Nginx poslužitelju. Promjenom postavke konfiguracijske datoteke Nginx možete jednostavno preusmjeriti promet na HTTPS bilo za određenu domenu ili preusmjeriti sve. Ova metoda, koju smo spomenuli u ovom članku, može vam pomoći da svoju web stranicu učinite sigurnijom unošenjem bilo kakvih promjena u korisničko iskustvo.

Vodič za bitku za Wesnoth
Bitka za Wesnoth jedna je od najpopularnijih strateških igara otvorenog koda koje trenutno možete igrati. Ne samo da se ova igra razvija već jako dugo...
0 A.D. Vodič
Od mnogih strateških igara tamo, 0 A.D. uspijeva se istaknuti kao sveobuhvatan naslov i vrlo duboka, taktička igra unatoč tome što je otvoren izvor. R...
Vodič za Unity3D
Uvod u Unity 3D Unity 3D moćan je motor za razvoj igara. Cross platforma je to što vam omogućuje stvaranje igara za mobilne uređaje, web, stolne račun...