Tässä artikkelissa käsittelemme kuinka verkkoliikenne ohjataan HTTP: stä suojattuun HTTPS: ään Nginxissä.
Vastaukset ja pyynnöt palautetaan selkokielisenä HTTP: ssä, kun taas HTTPS käyttää SSL / TLS: ää salaamaan asiakkaan ja palvelinjärjestelmän välisen tiedonsiirron. Siksi monista syistä HTTPS: ää käytetään HTTP: n kautta, jotka on lueteltu alla:
- Kaikki asiakas-palvelimen väliset tiedot molempiin suuntiin salataan. Kukaan ei kuitenkaan pääse käsittelemään arkaluontoisia tietoja, jos hänet pidätetään.
- Kun käytät HTTPS: ää, Google Chrome ja muut selaimet pitävät verkkosivustosi verkkotunnusta turvallisena.
- HTTPS-versio parantaa määritettyä verkkosivustosi suorituskykyä HTTP / 2-protokollan avulla.
- Jos palvelet verkkosivustosi verkkotunnusta HTTPS: n kautta, verkkosivusto sijoittuu paremmin Googlessa, koska se suosii kaikkia suojattuja HTTPS-verkkosivustoja.
On suositeltavaa ohjata liikenteen HTTP uudelleen HTTPS: ään Nginxissä erillisessä palvelinlohkossa kullekin sivustoversiolle. On myös suositeltavaa välttää liikenteen uudelleenohjaamista "if" -suunnan avulla, mikä saattaa aiheuttaa palvelimen epätavallista käyttäytymistä.
Ohjaa kaikki liikenne HTTP: stä HTTPS: ään
Lisää seuraavat muutokset Nginx-määritystiedostoon, jotta kaikki liikenne voidaan ohjata HTTP: stä HTTPS-versioon:
palvelinkuuntele 80 default_server;
palvelimen nimi _;
return 301 https: // $ isäntä $ request_uri;
Alla olemme laatineet jokaisen edellä mainitun termin:
Kuuntele 80 oletuspalvelin - tämä merkitsee järjestelmääsi, joka saa kaiken HTTP-liikenteen portilta 80.
Palvelimen_nimi _ - se on toimialue, joka vastaa mitä tahansa isäntänimeä.
Return 301 https: // $ host $ request_uri - tämä kertoo hakukoneillesi, jotka ohjaavat sen pysyvästi. Se täsmentää, että muuttuja $ host pitää verkkotunnuksia.
Kun muutat kokoonpanoasetuksia, sinun on ladattava Nginx-palvelut uudelleen järjestelmään. Lataa siis Nginx-palvelusi uudelleen seuraavalla komennolla:
$ sudo systemctl lataa nginx uudelleenOhjaa HTTP HTTPS-versioon määritetylle verkkotunnukselle Nginxissä
Kun olet asentanut SSL-varmenteen verkkotunnukseesi, sinulla on kaksi palvelinlohkovaihtoehtoa tälle toimialueelle. Yksi lohko on tarkoitettu HTTP-version kuunteluun portissa 80, ja toinen versio on HTTPS portissa 443. Yhden verkkosivuston verkkotunnuksen uudelleenohjaamiseksi HTTP: stä HTTPS: ään sinun on kuitenkin avattava Nginx-määritys. Voit löytää tämän määritystiedoston hakemistosta / etc / nginx / sites-available. Joka tapauksessa, jos et löytänyt tätä tiedostoa, voit etsiä sitä tiedostolla / etc / nginx / nginx.conf, / usr / local / nginx / conf tai / usr / local / etc / nginx ja tee sitten seuraavat muutokset tähän tiedostoon:
palvelinkuunnella 80;
palvelimen_nimi verkkotunnus.com www.verkkotunnus.com;
return 301 https: // domain-name.com $ request_uri;
Ymmärretään yllä oleva koodi rivi riviltä.
Kuuntele 80 - portti 80: n avulla palvelin kuuntelee kaikkia saapuvien yhteyksien määritettyjä toimialueita.
Palvelimen_nimi verkkotunnus.com www.verkkotunnus.com - se määrittää verkkotunnukset. Joten, korvaa se verkkosivustosi verkkotunnuksella, jonka haluat ohjata.
Palauta 301 https: // domain-name.com $ request_uri - se siirtää liikenteen sivuston HTTPS-versioon. Muuttujaa $ request_uri käytetään koko alkuperäisen pyynnön URI: ssä, johon myös argumentit sisältyvät.
Seuraavan menetelmän avulla voit ohjata liikenteen HTTPS: n www-versioon sivuston muuhun kuin www-versioon. On suositeltavaa luoda uudelleenohjaus erilliseen palvelinlohkoon sekä muille kuin www- ja www-versioille.
Selitetään esimerkillä. Jos haluat ohjata www HTTPS-pyynnöt muuhun kuin www-versioon, noudata seuraavaa kokoonpanoa:
palvelinkuunnella 80;
palvelimen_nimi verkkotunnus.com www.verkkotunnus.com;
return 301 https: // domain-name.com $ request_uri;
palvelin
kuuntele 443 ssl http2;
palvelimen_nimi www.verkkotunnus.com;
#… Muu koodi
return 301 https: // domain-name.com $ request_uri;
palvelin
kuuntele 443 ssl http2;
palvelimen_nimi verkkotunnus.com;
#… Muu koodi
Korvaa verkkotunnus verkkotunnuksellasi, kuten www.linuxhint.com.
Johtopäätös
Olemme keskustelleet siitä, miten liikenne ohjataan HTTP-versiosta Nginx-palvelimen HTTPS: ään. Muuttamalla Nginx-määritystiedostoasetusta voit helposti ohjata liikenteen HTTPS: ään joko tietylle toimialueelle tai ohjata kaikki. Tämä tässä artikkelissa mainittu menetelmä voi auttaa sinua parantamaan verkkosivustoasi tekemällä muutoksia käyttäjäkokemukseen.