Preduvjeti
Prije svega, ovaj vodič pretpostavlja da je korisnik na računalu instalirao odgovarajući SSH klijent, ako ne, instalirajte Putty kao klijenta, a zatim upotrijebite sljedeće naredbe. Uz to je potreban Nginx, Nano editor.
- Upišite sljedeće naredbe da biste instalirali Nano editor teksta. Prva naredba pomaže u dohvaćanju najnovijih paketa iz spremišta, a druga naredba instalira najnoviju verziju nano uređivača teksta.
sudo apt-get instalirati nano
- U prozor terminala upišite sljedeću naredbu da promijenite trenutni direktorij u nginx direktorij.
- Sad upišite nano zadani ili naziv datoteke pridružen domeni za promjenu postavki domene.
- Od sada slijedite jedan od sljedećih segmenata da biste nastavili.
Preusmjeravanje s HTTP-a (priključak 80)
Google, Bing i mnoge druge tražilice danas favoriziraju web stranice s šifriranom vezom. Kada je veza između klijenta i poslužitelja šifrirana, podaci koji se prenose putem te određene veze su sigurni, pa treće strane ne mogu pristupiti tim podacima. Kada veza nije šifrirana, takva mjesta nisu sigurna, a time ugrožavaju sigurnost podataka. Nesigurna web stranica koristi priključak 80 za pružanje svoje usluge javnosti. Nažalost, web se preglednik prema zadanim postavkama povezuje s priključkom 80, jer web poslužitelj pretpostavlja da je to ono što klijent prema zadanim postavkama želi, pa se zahtjev mora preusmjeriti na svoju osiguranu verziju. Postoji više načina da to napravite s Nginxom.
Metoda 1
Ako je trenutno ime domene dostupno i ako prima zahtjeve od klijenata, oni se mogu preusmjeriti na drugu domenu sa sljedećim isječkom koda. Jednostavno ga kopirajte u zadanu datoteku ili datoteku domene.
Zadani parametar poslužitelja navodi da je ovaj blok poslužitelja zadani poslužitelj, stoga svi zahtjevi prema portu 80 izvršavaju taj blok poslužitelja u početku prema zadanim postavkama, a zatim slijedi ostatak. Zagrada znači da također bilježi zahtjeve iz ipv6 mreža. Povratak 310 označava, preusmjeravanje je trajno i time se zajedno s njim prenosi sok od veze.
poslužiteljpreslušajte 80 default_server;
preslušajte [::]: 80 zadani_server;
domena_ime_poslužitelja.com www.domena.com;
vrati 301 https: // domena.com $ request_uri;
Metoda 2
Ako trenutni poslužitelj nema priloženo web mjesto, a zahtjev preusmjerava sve zahtjeve na port 80, tada se može koristiti sljedeći blok poslužitelja. Kopirajte ga u zadanu datoteku kao što je ranije rečeno. Ovdje _ (donja crta) označava bilo koju domenu. Kao i ranije, parametar default_server, zagrade (za IPv6 adrese) poput neobaveznih atributa i ovdje se mogu koristiti.
poslužiteljpreslušajte 80 default_server;
ime_poslužitelja _;
return 301 https: // $ host $ request_uri;
Metoda 3
Sljedeći isječak koda označava ako veza nije šifrirana, što znači da port 80 prima zahtjeve, a zatim se preusmjeravaju na sigurnu verziju navedene domene. To bi trebalo kopirati bilo gdje u bloku poslužitelj , ali nakon parametra ime_poslužitelja.
if ($ shema != "https")return 301 https: // $ host $ request_uri;
Preusmjeravanje s IP adrese
Za razliku od zajedničkog domaćina, i namjenski poslužitelji i virtualni privatni poslužitelji uvijek imaju dodijeljenu namjensku IP adresu. Ako je web poslužitelj konfiguriran s Nginxom s podvlakom (što znači da poslužitelj obrađuje svaki zahtjev), tada svaki zahtjev za IP adresom dobiva pristup i web mjestu. Pristup web mjestu putem IP adrese nije nešto što svaki webmaster želi iz različitih razloga. S druge strane, ako se svaki zahtjev obradi, zlonamjerni korisnici mogu pridružiti bilo koju slučajnu domenu web-poslužitelju, što nije dobro za naziv marke ili tvrtke, pa je stoga važno obrađivati zahtjeve samo za određene domene ili i i IP adresa. Ovaj segment pokazuje u takvim slučajevima kako se obrađuju zahtjevi na IP adresu web poslužitelja. Korištenje ovog bloka koda zajedno s jednim od gore navedenih blokova koda (osim metode 2 prethodnog rješenja) osigurava svaki zahtjev na obje domene, a IP se preusmjerava na željeno odredište.
Kao što je gore rečeno, kopirajte sljedeći isječak koda u zadanu datoteku Nginxa (preduvjeti, 3. korak). Umjesto da koristite ime domene u parametru server_name, jednostavno upotrijebite IP adresu poslužitelja, a zatim u sljedećem retku upotrijebite "return 301 domain" tamo gdje se zahtjev preusmjerava. Kad se zahtjev za ovu određenu IP adresu primi na poslužitelj, preusmjerava se na navedenu domenu. Najbolji primjer za to je kada slučajni korisnik upiše IP web poslužitelja za izravan pristup web mjestu. Ako sljedeći isječak koda nije naveden nigdje u zadanoj datoteci, bilo koji zahtjev prema IP-u se ne obrađuje; stoga korisnici ne mogu pristupiti web mjestu putem IP adrese.
poslužiteljslušati 80;
poslušajte [::]: 80;
slušajte 443 ssl http2;
poslušajte [::]: 443 ssl http2;
ime_poslužitelja 192.168.1.1;
povratak 301 https: // nucuta.com;
Preusmjeravanje s bilo koje druge domene
Ovo je rješenje isto kao i prvo rješenje ovog vodiča, osim što također preusmjerava zahtjeve na priključak 443 web poslužitelja, što znači da su i zaštićeni i nesigurni zahtjevi preusmjereni na navedenu domenu u parametru return. Kao što je ranije rečeno, jednostavno kopirajte ovo u zadanu datoteku.
poslužiteljslušati 80;
poslušajte [::]: 80;
slušajte 443 ssl http2;
poslušajte [::]: 443 ssl http2;
domena_ime_poslužitelja.com www.domena.com;
povratak 301 https: // nucuta.com;
Završno
Nakon slijeđenja jednog od gore navedenih rješenja, datoteka nginx mora se kompilirati kako bi konfiguracija stupila na snagu. Međutim, zadana datoteka mora se testirati prije sastavljanja, jer sprječava pad web poslužitelja ako je došlo do pogreške u konfiguraciji.
- Jednostavno upotrijebite sljedeću naredbu u Linux terminalu za testiranje zadane konfiguracijske datoteke, ako je rezultat dobar, nastavite na sljedeći korak.
- Upotrijebite jednu od sljedećih naredbi za ponovno pokretanje web poslužitelja Nginx. Naredba ovisi o imenu i verziji distribucije Linuxa.
ponovno učitavanje sudo usluge nginx
sudo / etc / init.d / nginx ponovno učitavanje