Nginx

Az URL-ek átirányítása az Nginx-ben

Az URL-ek átirányítása az Nginx-ben
Az Nginx egy könnyű webszerver, amelyet gyakran használnak fordított proxyként, webszerverként és terheléselosztóként is. Az Nginx alapértelmezés szerint sok hasznos funkcióval áll elő, és telepítéskor további modulok is hozzáadhatók. Ez az útmutató bemutatni kívánja az Nginx használatát az URL-ek különböző irányokba történő átirányításához. Annak ellenére, hogy az Nginx rengeteg szolgáltatást nyújt az URL-ek átirányításához, ez az útmutató azok töredékét használja, mivel az a célja, hogy csak az alapvetőeket tanítsa meg az URL átirányításában. Az ebben az útmutatóban ismertetett területek a nem biztonságos (80-as port) URL-ek átirányítása a biztonságos verziójába, az IP-re irányuló kérelem átirányítása egy tartománynévre, és minden más aldomain, tartomány átirányítása a fő tartományra.

Előzetes követelmények

Először is, ez az útmutató feltételezi, hogy a felhasználónak megfelelő SSH kliens van telepítve a számítógépre, ha nem megy, és telepíti a Putty-t kliensként, akkor használja a következő parancsokat. Ezen felül az Nginx használatával a Nano szerkesztő is szükséges.

  1. Írja be a következő parancsokat a Nano szövegszerkesztő telepítéséhez. Az első parancs segít a legfrissebb csomagok lekérésében az adattárakból, a második pedig a nano szövegszerkesztő legújabb verzióját telepíti.
sudo apt-get frissítés
sudo apt-get install nano
  1. A terminál ablakában írja be a következő parancsot az aktuális könyvtár nginx könyvtárra váltásához.
cd / etc / nginx / sites-available
  1. Most írja be nano alapértelmezett vagy a fájlhoz tartozó domain nevét a tartomány beállításainak megváltoztatásához.
  2. Mostantól kövesse a következő szegmensek egyikét a folytatáshoz.

Átirányítás HTTP-ről (80-as port)

A Google, a Bing és sok más keresőmotor manapság a titkosított kapcsolattal rendelkező webhelyeket részesíti előnyben. Az ügyfél és a szerver közötti kapcsolat titkosításakor az adott kapcsolaton keresztül továbbított adatok biztonságosak, és így harmadik felek nem férhetnek hozzá ezekhez az adatokhoz. Ha a kapcsolat nincs titkosítva, az ilyen webhelyek nem biztonságosak, és ez veszélyezteti az adatok biztonságát. A nem biztonságos webhely a 80-as portot használja a nyilvánosság számára történő szolgáltatás nyújtására. Sajnos alapértelmezés szerint a webböngésző csatlakozik a 80-as porthoz, mivel a webszerver feltételezi, hogy alapértelmezés szerint ezt akarja az ügyfél, és ezért a kérést át kell irányítani a biztonságos verzióra. Az Nginx segítségével többféleképpen is elvégezhető.

1. módszer

Ha az aktuális tartománynév elérhető, és ha kéréseket fogad az ügyfelektől, akkor az alábbi kódrészlettel átirányíthatók egy másik tartományba. Egyszerűen másolja át az alapértelmezett fájlba vagy a tartomány fájljába.

Az alapértelmezett kiszolgálóparaméter meghatározza, hogy ez a kiszolgálóblokk legyen az alapértelmezett kiszolgáló, ezért a 80-as portra érkező bármely kérés alapértelmezés szerint először végrehajtja ezt a kiszolgálóblokkot, majd ezt követően a pihenés következik. A zárójel azt jelzi, hogy rögzíti az ipv6 hálózatokról érkező kéréseket is. A 310 visszatérés azt jelenti, hogy az átirányítás végleges, és ezzel együtt a linklé is átkerül.

szerver
hallgat 80 default_server;
hallgat [::]: 80 default_server;
server_name domain.com www.tartomány.com;
return 301 https: // domain.com $ request_uri;

2. módszer

Ha az aktuális kiszolgálóhoz nem kapcsolódik webhely, és a követelmény minden kérést átirányít a 80-as portra, akkor a következő kiszolgálóblokk használható. Másolja át az alapértelmezett fájlba, ahogy korábban említettük. Itt _ (aláhúzás) bármelyik tartományt jelöli. A korábbi, a default_server paraméterhez hasonlóan itt is használhatók a zárójelek (IPv6-címekhez), mint az opcionális attribútumok.

szerver
hallgat 80 default_server;
szerver név _;
return 301 https: // $ host $ request_uri;

3. módszer

A következő kódrészlet azt jelöli, ha a kapcsolat nincs titkosítva, vagyis a 80-as port fogadja a kéréseket, majd átirányítják a megadott tartomány biztonságos verziójába. Ezt át kell másolni a kiszolgáló blokkjának bárhová, de a server_name paraméter után.

ha ($ séma != "https")
return 301 https: // $ host $ request_uri;

Átirányítás az IP-címről

A megosztott gazdagépektől eltérően mind a dedikált szerverek, mind a virtuális magánszerverek mindig dedikált IP-címet rendelnek hozzá. Ha a webszerver az Nginx-szel van aláhúzással konfigurálva (ami azt jelenti, hogy a szerver minden kérést feldolgoz), akkor az IP-címre küldött bármely kérés hozzáférést kap a webhelyhez. Minden webmester különféle okokból nem akarja, hogy IP-címen keresztül férjen hozzá a webhelyhez. Másrészt, ha minden kérést feldolgoznak, a rosszindulatú felhasználók bármilyen véletlen tartományt társíthatnak a webszerverhez, ami nem tesz jót a márka vagy az üzleti vállalkozás nevének, ezért fontos, hogy csak meghatározott domainekre vagy IP-cím. Ez a szegmens bemutatja ilyen esetekben a webkiszolgáló IP-címére irányuló kérelmek feldolgozását. Ennek a kódblokknak a fenti kódblokkok egyikével együtt használva (kivéve az előző megoldás 2. módszerét) minden egyes kérelem mindkét tartományhoz biztosítva, és az IP átirányításra kerül a kívánt célhelyre.

Mint fent említettük, másolja a következő kódrészletet az Nginx alapértelmezett fájljába (előfeltételek, 3. lépés). Ahelyett, hogy a domain nevét a server_name paraméterben használja, egyszerűen használja a kiszolgáló IP-címét, majd a következő sorban használja a „return 301 domain” elemet arra az helyre, ahova a kérést átirányítják. Most, amikor az adott IP-címre érkező kérés érkezett a szerverre, az átirányításra kerül a megadott tartományba. Erre a legjobb példa, amikor egy véletlenszerű felhasználó beírja a webszerver IP-jét, hogy közvetlenül elérje a webhelyet. Ha az alapértelmezett fájlban sehol nem szerepel a következő kódrészlet, akkor az IP-re érkező bármely kérés nem kerül feldolgozásra; így a felhasználók az IP-címen keresztül nem tudnak hozzáférni a weboldalhoz.

szerver
hallgat 80;
hallgat [::]: 80;
hallgatni 443 ssl http2;
hallgat [::]: 443 ssl http2;
szerver_neve 192.168.1.1;
return 301 https: // nucuta.com;

Átirányítás bármely más domainről

Ez a megoldás megegyezik az útmutató első megoldásával, azzal a különbséggel, hogy a kéréseket a webszerver 443-as portjára is átirányítja, vagyis mind a biztonságos, mind a nem biztonságos kérelmek a megadott tartományba kerülnek a visszatérési paraméterként. Mint korábban mondtuk, egyszerűen másolja ezt az alapértelmezett fájlba.

szerver
hallgat 80;
hallgat [::]: 80;
hallgatni 443 ssl http2;
hallgat [::]: 443 ssl http2;
server_name domain.com www.tartomány.com;
return 301 https: // nucuta.com;

Véglegesítés

A fenti megoldások követése után az nginx fájlt össze kell állítani a konfiguráció érvénybe léptetése érdekében. Az alapértelmezett fájlt azonban fordítás előtt tesztelni kell, mivel ez megakadályozza a webkiszolgáló összeomlását, ha hiba történt a konfigurációban.

  1. Egyszerűen használja a következő parancsot a Linux terminálon az alapértelmezett konfigurációs fájl teszteléséhez. Az eredmény jó, ha folytatja a következő lépéssel.
sudo nginx -t
  1. A következő parancsok egyikével indítsa újra az Nginx webkiszolgálót. A parancs a Linux terjesztő nevétől és verziójától függ.
sudo systemctl indítsa újra az nginx fájlt
sudo szolgáltatás nginx reload
sudo / etc / init.d / nginx újratöltés
Az egér mozgásának vezérlése és kezelése több monitor között a Windows 10 rendszerben
Dual Display Mouse Manager lehetővé teszi az egér mozgásának vezérlését és konfigurálását több monitor között, lassítva annak mozgását a határ közeléb...
A WinMouse segítségével testre szabhatja és javíthatja az egérmutató mozgását a Windows PC-n
Ha szeretné javítani az egérmutató alapértelmezett funkcióit, használjon ingyenes programokat WinMouse. További funkciókat kínál, amelyek segítenek ab...
Az egér bal oldali gombja nem működik a Windows 10 rendszeren
Ha dedikált egeret használ laptopjával vagy asztali számítógépével, de a az egér bal gombja nem működik a Windows 10/8/7 rendszeren valamilyen oknál f...