Nginx Ohjaa HTTP HTTPS: ään

Nginx Redirect Http Https



Nginx, joka lausutaan Engine x: nä, on ilmainen, avoimen lähdekoodin Linux-pohjainen suorituskykyinen web ja käänteinen välityspalvelin, joka vastaa suurimman Internet-sivuston liikenteen kuormituksen hallinnasta ja käsittelystä. Nginx on tehokas uudelleenohjaustyökalu, joka voidaan helposti määrittää järjestelmässäsi ohjaamaan vähemmän suojattu tai salaamaton HTTP -verkkoliikenne salattuun ja suojattuun HTTPS -verkkopalvelimeen. Jos olet järjestelmänvalvoja tai kehittäjä, käytät Nginx -palvelinta säännöllisesti.

Tässä artikkelissa käsittelemme sitä, miten verkkoliikenne ohjataan HTTP: stä suojattuun HTTPS -protokollaan Nginxissä.







Vastaukset ja pyynnöt palautetaan selkeänä tekstinä HTTP: ssä, kun taas HTTPS käyttää SSL/TLS -salausta asiakas- ja palvelinjärjestelmän välisen viestinnän salaamiseen. Siksi HTTPS -protokollaa käytetään HTTP: n kautta useista syistä, jotka on lueteltu alla:



  • Kaikki asiakaspalvelimen väliset tiedot molempiin suuntiin on salattu. Kukaan ei kuitenkaan voi päästä käsiksi arkaluonteisiin tietoihin, jos ne siepataan.
  • Kun käytät HTTPS -protokollaa, Google Chrome ja muut selaimet pitävät verkkosivustosi verkkotunnusta turvallisena.
  • HTTPS -versio parantaa määritettyä verkkosivuston suorituskykyä käyttämällä HTTP/2 -protokollaa.
  • Jos palvelet verkkosivustosi verkkotunnusta HTTPS: n kautta, verkkosivusto sijoittuu paremmin Googlessa, koska se suosii kaikkia HTTPS -suojattuja verkkosivustoja.

On suositeltavaa ohjata liikenteen HTTP HTTPS: ään Nginxissä erillisessä palvelinlohkossa kullekin sivustoversiolle. On myös suositeltavaa välttää liikenteen uudelleenohjaamista käyttämällä, jos suunta, joka voi aiheuttaa palvelimen epätavallista toimintaa.



Ohjaa kaikki liikenne HTTP: stä HTTPS: ään

Lisää seuraavat muutokset Nginx -määritystiedostoon, jotta voit ohjata kaiken liikenteen HTTP: stä HTTPS -versioon:





palvelin {
kuunnella 80default_server;
palvelimen nimi _;
palata 301https: //$ isäntä$ request_uri;
}

Alla olemme laatineet jokaisen edellä mainitun termin:

Kuuntele 80 oletuspalvelin - tämä ilmoittaa järjestelmästäsi, joka saa kaiken portin 80 HTTP -liikenteen.
Palvelimen_nimi _ - se on toimialue, joka vastaa mitä tahansa isäntänimeä.



Palauta 301 https: // $ host $ request_uri - tämä kertoo hakukoneille, jotka ohjaavat sen pysyvästi. Se määrittää, että muuttuja $ host pitää verkkotunnusten nimet.

Kun olet muuttanut kokoonpanoasetuksia, sinun on ladattava Nginx -palvelut uudelleen järjestelmääsi. Joten lataa Nginx -palvelut uudelleen käyttämällä seuraavaa komentoa:

$sudosystemctl lataa nginx

Ohjaa HTTP HTTPS -versioon määritettyyn toimialueeseen Nginxissä

Kun olet asentanut SSL -varmenteen verkkotunnukseesi, sinulla on kaksi palvelinlohkoasetusta tälle toimialueelle. Yksi lohko on tarkoitettu HTTP -version kuunteluun portissa 80 ja toinen versio on HTTPS portissa 443. Kuitenkin, jos haluat ohjata yhden verkkosivuston verkkotunnuksen HTTP: stä HTTPS: ään, sinun on avattava Nginx -kokoonpano. Voit etsiä tämän määritystiedoston hakemistosta/etc/nginx/sites. Joka tapauksessa, jos et löytänyt tätä tiedostoa, voit etsiä sitä /etc/nginx/nginx.conf,/usr/local/nginx/conf tai/usr/local/etc/nginx ja suorittaa sitten seuraavat muutokset tähän tiedostoon:

palvelin {
kuunnella 80;
palvelimen nimi domain-name.com www.domain-name.com;
palata 301https://domain-name.com$ request_uri;
}

Ymmärrämme yllä olevan koodin rivi riviltä.
Kuuntele 80 - portin 80 avulla palvelin kuuntelee kaikkia saapuvia yhteyksiä määritetyllä toimialueella.

Palvelimen_nimi domain-name.com www.domain-name.com-se määrittää verkkotunnusten nimet. Joten korvaa se verkkosivustosi verkkotunnuksella, jonka haluat uudelleenohjata.

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 -osoitteeseen, johon myös argumentit sisältyvät.

Seuraavalla menetelmällä voit ohjata liikenteen HTTPS www -versioon sivuston muuhun kuin www-versioon. On suositeltavaa luoda uudelleenohjaus erilliseen palvelinlohkoon sekä ei-www- että www-versioille.

Selitetään esimerkillä. Jos haluat ohjata www-HTTPS-pyynnöt muuhun kuin www-versioon, toimi seuraavasti:

palvelin {
kuunnella 80;
palvelimen nimi domain-name.com www.domain-name.com;
palata 301https://domain-name.com$ request_uri;
}
palvelin {
kuunnella 443 ssl http2;
palvelimen nimi www.domain-name.com;
#. . . muu koodi
palata 301https://domain-name.com$ request_uri;
}
palvelin {
kuunnella 443 ssl http2;
palvelimen nimi domain-name.com;

#. . . muu koodi
}

Korvaa verkkotunnus verkkotunnuksellasi, kuten www.linuxhint.com.

Johtopäätös

Olemme keskustelleet liikenteen uudelleenohjaamisesta HTTP -versiosta Nginx -palvelimen HTTPS -protokollaan. Muuttamalla Nginx -määritystiedostoasetusta voit helposti ohjata liikenteen HTTPS -järjestelmään joko tietylle toimialueelle tai uudelleenohjata kaikki. Tämä menetelmä, jonka olemme maininneet tässä artikkelissa, voi auttaa sinua tekemään verkkosivustostasi turvallisemman tekemällä muutoksia käyttökokemukseen.