Eeltingimused
Esiteks eeldatakse selles juhendis, et kasutajal on arvutisse installitud õige SSH-klient, kui mitte minna ja installida kliendina Putty, siis kasutage järgmisi käske. Lisaks on vaja ka Nginxi, Nano-redaktorit.
- Nano tekstiredaktori installimiseks tippige järgmised käsud. Esimene käsk aitab hankida hoidlatest uusimaid pakette ja teine käsk installib nano-tekstiredaktori uusima versiooni.
sudo apt-get install nano
- Sisestage terminaliaknas järgmine käsk, et muuta praegune kataloog nginx-kataloogiks.
- Nüüd tippige nano vaikimisi või domeeniga seotud failinime domeeni sätete muutmiseks.
- Alates nüüd järgige jätkamiseks ühte järgmistest segmentidest.
Suunamine HTTP-st (port 80)
Google, Bing ja paljud teised otsingumootorid eelistavad tänapäeval krüpteeritud ühendusega veebisaite. Kui ühendus kliendi ja serveri vahel on krüptitud, on selle konkreetse ühenduse kaudu edastatavad andmed turvalised ja seega ei pääse kolmandad isikud nendele andmetele juurde. Kui ühendus pole krüpteeritud, on sellised saidid ebaturvalised ja seega ohustab see andmete turvalisust. Ebaturvaline veebileht kasutab avalikkuse teenuse osutamiseks porti 80. Kahjuks ühendub veebibrauser vaikimisi pordiga 80, kuna veebiserver eeldab, et klient soovib seda vaikimisi ja seega tuleb taotlus suunata selle turvatud versiooni. Nginxiga saate seda teha mitmel viisil.
1. meetod
Kui praegune domeeninimi on saadaval ja kui see saab klientidelt päringuid, saab need järgmise koodijupiga suunata teise domeeni. Kopeerige see lihtsalt vaikefaili või domeeni faili.
Serveri vaikeparameeter määrab, et see serveriplokk on vaikeserver, seega täidavad kõik taotlused pordile 80 esmalt vaikimisi selle serveriploki ja seejärel järgnevad ülejäänud. Sulg tähistab, et see haarab ka taotlusi ipv6 võrkudest. Tagasitulek 310 tähistab, ümbersuunamine on püsiv ja seega liigub koos sellega ka mahl.
serverkuulata 80 default_server;
kuula [::]: 80 default_server;
server_name domeen.com www.domeen.com;
tagastage 301 https: // domeen.com $ request_uri;
2. meetod
Kui praegusel serveril pole ühtegi veebisaiti ja nõue suunab kõik taotlused porti 80, saab kasutada järgmist serveriplokki. Kopeerige see vaikefaili, nagu varem öeldud. Siin tähistab _ (alakriips) mis tahes domeeni. Nagu varemgi, saab ka siin kasutada parameetrit default_server, sulgusid (IPv6-aadresside jaoks) nagu valikulisi atribuute.
serverkuulata 80 default_server;
serveri_nimi _;
tagastage 301 https: // $ host $ request_uri;
3. meetod
Järgmine koodijupp tähistab, kui ühendus pole krüpteeritud, see tähendab, et port 80 võtab vastu päringuid, seejärel suunatakse need määratud domeeni turvalisse versiooni. See tuleks kopeerida serveri ploki suvalisse kohta, kuid pärast parameetrit server_name.
kui (skeem $ != "https")tagastage 301 https: // $ host $ request_uri;
Suunamine IP-aadressilt
Erinevalt jagatud hostist on mõlemale spetsiaalsele serverile ja virtuaalsele privaatserverile alati eraldatud spetsiaalne IP-aadress. Kui veebiserver on konfigureeritud Nginxiga alakriipsuga (mis tähendab, et server töötleb kõiki taotlusi), saab iga IP-aadressi taotlus juurdepääsu ka veebisaidile. IP-aadressi kaudu veebisaidile juurdepääsu omamine pole iga veebimeistri soovil erinevatel põhjustel. Teisest küljest võivad pahatahtlikud kasutajad iga päringu töötlemisel seostada veebiserveriga mis tahes juhusliku domeeni, mis ei sobi kaubamärgi ega ettevõtte nimele, ja seetõttu on oluline töödelda ainult konkreetseid domeene või IP-aadress. See segment näitab sellistel juhtudel, kuidas veebiserveri IP-aadressile päringuid töödelda. Selle koodiploki kasutamine koos ühe ülaltoodud koodiplokiga (välja arvatud eelmise lahenduse 2. meetod) tagab iga päringu mõlemale domeenile ja IP suunatakse soovitud sihtkohta.
Nagu eespool öeldud, kopeerige järgmine koodilõik Nginxi vaikefaili (eeltingimused, 3. samm). Selle asemel, et kasutada domeeni nime parameetris server_name, kasutage lihtsalt serveri IP-aadressi ja seejärel kasutage järgmisel real „return 301 domain” sinna, kuhu päringut suunatakse. Kui serverile saabub päring sellele konkreetsele IP-aadressile, suunatakse see määratud domeeni. Parim näide on see, kui juhuslik kasutaja sisestab veebisaidile otse saidile juurdepääsemiseks IP-i. Kui järgmist koodilõiku pole vaikefailis kusagil märgitud, ei töödelda ühtegi IP-le esitatud taotlust; seega ei pääse kasutajad IP-aadressi kaudu veebisaidile juurde.
serverkuulata 80;
kuulama [::]: 80;
kuulata 443 ssl http2;
kuulake [::]: 443 ssl http2;
serveri_nimi 192.168.1.1;
tagastage 301 https: // nucuta.com;
Ümbersuunamine mis tahes muult domeenilt
See lahendus on sama kui käesoleva juhendi esimene lahendus, välja arvatud see, et see suunab ka päringud veebiserveri 443 porti, mis tähendab, et nii turvatud kui ka tagamata päringud suunatakse vastuparameetriks määratud domeeni. Nagu varem öeldud, kopeerige see lihtsalt vaikefaili.
serverkuulata 80;
kuulama [::]: 80;
kuulata 443 ssl http2;
kuulake [::]: 443 ssl http2;
server_name domeen.com www.domeen.com;
tagastage 301 https: // nucuta.com;
Lõpetamine
Pärast ühe ülaltoodud lahenduse järgimist tuleb nginx-fail koostada, et selle konfiguratsioon jõustuks. Vaikefaili tuleb aga enne kompileerimist testida, kuna see takistab veebiserveri krahhi, kui konfiguratsioonis oli viga.
- Vaikimisi konfiguratsioonifaili testimiseks kasutage Linuxi terminalis lihtsalt järgmist käsku, nii et tulemus on hea jätkata järgmise sammuga.
- Nginxi veebiserveri taaskäivitamiseks kasutage ühte järgmistest käskudest. Käsk sõltub Linuxi distributsiooni nimest ja versioonist.
sudo teenuse nginx uuesti laadimine
sudo / etc / init.d / nginx laadige uuesti