Šiame straipsnyje dirbsime, kaip nukreipti žiniatinklio srautą iš HTTP į saugų HTTPS „Nginx“.
Atsakymai ir užklausos grąžinami paprastojo teksto forma HTTP, o HTTPS naudoja SSL / TLS šifruoti ryšį tarp kliento ir serverio sistemos. Todėl dėl daugelio priežasčių HTTPS naudojamas per HTTP, kurie išvardyti toliau:
- Visi duomenys tarp kliento ir serverio į abi puses yra užšifruoti. Tačiau niekas negali pasiekti slaptos informacijos, jei bus sulaikytas.
- Kai naudojate HTTPS, „Google Chrome“ ir kitos naršyklės jūsų svetainės domeną laikys saugiu.
- HTTPS versija pagerina jūsų nurodytą svetainės našumą naudojant HTTP / 2 protokolą.
- Jei savo svetainės domeną aptarnaujate per HTTPS, tada svetainė bus geresnė „Google“, nes ji palaiko visas saugias HTTPS svetaines.
Pageidautina peradresuoti HTTP srautą į HTTPS „Nginx“ kiekvienoje svetainės versijoje atskirame serverio bloke. Taip pat rekomenduojama vengti srauto nukreipimo naudojant kryptį „jei“, kuri gali sukelti neįprastą serverio elgesį.
Nukreipkite visą srautą iš HTTP į HTTPS
Į „Nginx“ konfigūracijos failą įtraukite šiuos pakeitimus, kad nukreiptumėte visą srautą iš HTTP į HTTPS versiją:
serverisklausytis 80 default_server;
serverio pavadinimas _;
grąžinti 301 https: // $ host $ request_uri;
Žemiau mes parengėme kiekvieną pirmiau minėtą terminą:
Klausykite 80 default_server - tai signalizuos jūsų sistemai, kuri 80 uoste fiksuoja visą HTTP srautą.
Server_name _ - tai domenas, kuris atitiks bet kurį pagrindinio kompiuterio pavadinimą.
Grąžinkite 301 https: // $ host $ request_uri - tai pasakys jūsų paieškos varikliams, kurie visam laikui peradresuoja. Jame nurodoma, kad kintamasis $ host turi domenų vardus.
Pakeitę konfigūracijos parametrus, turite iš naujo įkelti „Nginx“ paslaugas į savo sistemą. Taigi, iš naujo įkelkite „Nginx“ paslaugas naudodami šią komandą:
$ sudo systemctl perkrauti nginxNukreipkite HTTP į HTTPS versiją nurodytam domenui
Įdiegę SSL sertifikatą savo domene, turėsite dvi šio domeno serverio blokavimo parinktis. Vienas blokas skirtas HTTP versijai klausytis 80 prievade, o antroji versija yra HTTPS 443 prievade. Tačiau norint peradresuoti vieną svetainės domeną iš HTTP į HTTPS, turite atidaryti „Nginx“ konfigūraciją. Šį konfigūracijos failą galite rasti kataloge / etc / nginx / sites-available. Bet kokiu atveju, jei neradote šio failo, galite jo ieškoti naudodami / etc / nginx / nginx.conf, / usr / local / nginx / conf arba / usr / local / etc / nginx, tada atlikite šiuos pakeitimus šiame faile:
serverisklausytis 80;
server_name domeno vardas.com www.domeno vardas.com;
grąžinti 301 https: // domain-name.com $ request_uri;
Supraskime aukščiau nurodytą kodą eilutėmis.
Klausytis 80 - naudodamas 80 prievadą, serveris klausys visų gaunamų ryšių nurodyto domeno.
Server_name domeno vardas.com www.domeno vardas.com - tai nurodo domenų vardus. Taigi, pakeiskite jį savo svetainės domeno pavadinimu, kurį norite peradresuoti.
Grąžinkite 301 https: // domain-name.com $ request_uri - jis perkelia srautą į svetainės HTTPS versiją. Kintamasis $ request_uri naudojamas visai pradinei užklausos URI, kuriame taip pat yra argumentų.
Naudodami šį metodą, galite nukreipti srautą į HTTPS www versiją į ne www versiją. Rekomenduojama sukurti peradresavimą atskirame serverio bloke ir ne www, tiek www versijoms.
Paaiškinkime pavyzdžiu. Jei norite peradresuoti „www HTTPS“ užklausas į ne „www“ versiją, atlikite šią konfigūraciją:
serverisklausytis 80;
server_name domeno vardas.com www.domeno vardas.com;
grąžinti 301 https: // domain-name.com $ request_uri;
serveris
klausyk 443 ssl http2;
serverio vardas www.domeno vardas.com;
#… Kitas kodas
grąžinti 301 https: // domain-name.com $ request_uri;
serveris
klausyk 443 ssl http2;
server_name domeno vardas.com;
# ... kitas kodas
Pakeiskite domeno pavadinimą savo domenu, pvz., Www.linuxhint.com.
Išvada
Aptarėme, kaip nukreipti srautą iš HTTP versijos į HTTPS „Nginx“ serveryje. Pakeitę „Nginx“ konfigūracijos failo parametrą, galite lengvai nukreipti srautą į HTTPS nurodytam domenui arba peradresuoti visus. Šis metodas, kurį paminėjome šiame straipsnyje, gali padėti jums padaryti savo svetainę saugesnę, atlikus bet kokius vartotojo patirties pakeitimus.