Nginx

Nginx preusmeri HTTP na HTTPS

Nginx preusmeri HTTP na HTTPS
Nginx, ki se izgovarja kot »Engine x«, je brezplačen odprtokodni visokozmogljivi splet, ki temelji na Linuxu, in obratni proxy strežnik, ki je odgovoren za upravljanje in upravljanje obremenitve največjega spletnega prometa na internetu. Nginx je močno orodje za preusmeritev, ki ga je mogoče enostavno konfigurirati v vašem sistemu za preusmeritev manj varnega ali nešifriranega spletnega prometa HTTP na šifriran in zaščiten spletni strežnik HTTPS. Če ste skrbnik sistema ali razvijalec, potem redno uporabljate strežnik Nginx.

V tem članku bomo obravnavali, kako preusmeriti spletni promet s HTTP na varen HTTPS v Nginxu.

Odgovori in zahteve se vrnejo v obliki navadnega besedila v HTTP, medtem ko HTTPS uporablja SSL / TLS za šifriranje komunikacije med odjemalcem in strežniškim sistemom. Zaradi številnih razlogov se HTTPS uporablja prek HTTP, ki so navedeni spodaj:

Zaželeno je, da promet HTTP preusmerite na HTTPS v Nginxu v ločenem strežniškem bloku za vsako različico spletnega mesta. Priporočljivo je tudi, da se izogibate preusmerjanju prometa v smeri "če", ki lahko povzroči nenavadno vedenje strežnika.

Preusmerite ves promet s HTTP na HTTPS

V konfiguracijsko datoteko Nginx dodajte naslednje spremembe, da preusmerite ves promet s protokola HTTP na različico HTTPS:

strežnik
poslušaj 80 default_server;
ime_strežnika _;
vrni 301 https: // $ host $ request_uri;

Spodaj smo izdelali vsak zgoraj omenjeni izraz:

Poslušaj 80 default_server - to bo signal vašega sistema, ki zajame ves promet HTTP na vratih 80.
Server_name _ - to je domena, ki se bo ujemala s katerim koli imenom gostitelja.

Vrni 301 https: // $ host $ request_uri - to pove vašim iskalnikom, da ga trajno preusmerijo. Določa, da ima spremenljivka $ host imena domen.

Ko spremenite nastavitve konfiguracije, morate v sistem znova naložiti storitve Nginx. Torej znova naložite svoje storitve Nginx z naslednjim ukazom:

$ sudo systemctl znova naložite nginx

Preusmerite različico HTTP na HTTPS za določeno domeno v Nginxu

Po namestitvi potrdila SSL v svojo domeno boste imeli na voljo dve možnosti blokov strežnika za to domeno. En blok je namenjen poslušanju različice HTTP na vratih 80, druga različica pa je HTTPS na vratih 443. Če želite preusmeriti eno domeno spletnega mesta s HTTP na HTTPS, morate odpreti konfiguracijo Nginx. To konfiguracijsko datoteko lahko poiščete v imeniku / etc / nginx / sites-available. V vsakem primeru, če te datoteke niste našli, jo lahko poiščete z / etc / nginx / nginx.conf, / usr / local / nginx / conf ali / usr / local / etc / nginx in nato v tej datoteki izvedite naslednje spremembe:

strežnik
poslušaj 80;
ime-strežnika ime-domene.com www.domena.com;
vrni 301 https: // ime-domene.com $ request_uri;

Razumejmo zgornjo kodo po vrsticah.
Poslušaj 80 - s pomočjo vrat 80 bo strežnik poslušal vse dohodne povezave določene domene.

Ime-strežnika ime-domene.com www.domena.com - določa imena domen. Zato ga nadomestite z imenom domene spletnega mesta, ki ga želite preusmeriti.

Vrnite 301 https: // ime-domene.com $ request_uri - promet premakne na HTTPS različico spletnega mesta. Spremenljivka $ request_uri se uporablja za celoten izvirni URI zahteve, v katerem so tudi argumenti.

Z naslednjo metodo lahko promet preusmerite na HTTPS www različico spletnega mesta, ki ni www. Priporočljivo je ustvariti preusmeritev v ločenem strežniškem bloku za različice, ki niso www in www.

Pojasnimo na primeru. Če želite zahteve HTTPS www preusmeriti na različico, ki ni www, potem sledite naslednji konfiguraciji:

strežnik
poslušaj 80;
ime-strežnika ime-domene.com www.domena.com;
vrni 301 https: // ime-domene.com $ request_uri;

strežnik
poslušaj 443 ssl http2;
ime_strežnika www.domena.com;
#… Druga koda
vrni 301 https: // ime-domene.com $ request_uri;

strežnik
poslušaj 443 ssl http2;
ime-strežnika ime-domene.com;
#… Druga koda

Zamenjajte ime domene s svojo domeno, na primer www.linuxhint.com.

Zaključek

Razpravljali smo o tem, kako preusmeriti promet z različice HTTP na HTTPS na strežniku Nginx. S spreminjanjem nastavitve konfiguracijske datoteke Nginx lahko promet enostavno preusmerite na HTTPS bodisi za določeno domeno bodisi preusmerite vse. Ta metoda, ki smo jo omenili v tem članku, vam lahko pomaga, da naredite spletno mesto bolj varno, tako da spremenite uporabniško izkušnjo.

Najboljše igre z ročnim sledenjem
Oculus Quest je pred kratkim predstavil odlično idejo ročnega sledenja brez krmilnikov. Z vedno večjim številom iger in dejavnosti, ki izvajajo podpor...
Kako prikazati prekrivanje zaslonskega menija v celozaslonskih aplikacijah in igrah za Linux
Igranje celozaslonskih iger ali uporaba aplikacij v celozaslonskem načinu brez motenj vam lahko odreže ustrezne sistemske informacije, ki so vidne na ...
Top 5 kartic za zajemanje iger
Vsi smo v YouTubu videli in oboževali pretakanje iger. PewDiePie, Jakesepticye in Markiplier so le nekateri izmed najboljših igralcev, ki so zaslužili...