CloudSigma Tutorial: telepítése Nginx Ubuntu 18.04

Ha kész írásban kódot a honlapon vagy web app, szüksége lesz rá helyezni egy olyan helyen, ahol lehet futtatni, és szállít tartalmat a felhasználók számára. Ez az, ahol webszerver szoftver jön. Egy egyszerű Google keresés webszerver szoftver hozza meg elég egy listát a megoldások közül lehet választani.

ebben az oktatóanyagban a Nginx-re összpontosítunk; konkrétan arra, hogyan lehet futtatni az Ubuntu 18.04-en. Nginx az egyik legnépszerűbb webszerver szoftver a világon. Valójában, helyet foglal el az első ötben Opensource.com rangsor. Feladata, hogy biztosítsa a legnagyobb forgalmú internetes oldalak elérhetőségét és skálázhatóságát. Garantálja a biztonságot, és fordított proxyként is használhatja. Szóval, hogyan telepítheti az Nginx-et az Ubuntu 18.04-re?

előfeltételek

természetesen már van olyan számítógépe, amely Ubuntu 18.0.4-et futtat; sudo jogosultságokkal rendelkező nem root felhasználója van. Ha nem, menjen erre a linkre az Ubuntu 18.0.4 letöltéséhez, majd kövesse az útmutatókat a kezdeti kiszolgáló beállításánál az Ubuntu-val, hogy hozzon létre egy nem gyökér fiókot. Miután rendelkezik fiókkal, be kell jelentkeznie nem root felhasználóként, majd folytathatjuk a következő lépéseket.

1. lépés-Telepítse az Nginx

Ubuntu a Debianon alapul. A deb csomagok parancssorból történő telepítéséhez használhatja az apt vagy a dpkg parancsokat. Az apt parancsot fogjuk használni, mivel ez népszerűbb. Az Apt parancs lehetővé teszi a felhasználók számára, hogy olyan csomagokat telepítsenek, amelyek az általuk futó konkrét Linux disztribúció alapértelmezett tárolóiból állnak rendelkezésre. Ebben az esetben az Nginx elérhető az Ubuntu 18.04 alapértelmezett tárolóiban, így folytathatjuk. Alapszabály, most pedig, amikor telepítése minden csomag egy Linux disztribúció, először frissítés; írja be a következő parancsot a terminálban, hogy update:

sudo apt update

Majd telepítse a Nginx, írja be a következő parancsot:

sudo apt install nginx

Kövesse az utasításokat, valamint a Nginx lesz telepítve a szerveren együtt a szükséges függőségeket.

2. lépés-Állítsa be a tűzfalat

Az Ubuntu alapértelmezett tűzfalkonfigurációs eszköze UFW. Az UFW a nem egyszerű tűzfalat jelenti, amelyet a tűzfal konfigurációjának megkönnyítésére fejlesztettek ki. Alapértelmezésben Nginx regisztrálja magát, mint egy szolgáltatás UFW telepítés után, így könnyebb Nginx access konfiguráció. Első engedélyezze a UFW megadásával a következő parancsot:

sudo ufw enable

A következő parancs felsorolja az alkalmazás konfigurációs az UFW lehetővé teszi, hogy:

sudo ufw app list

ez Itt egy felvételt, amit a terminál lehet, hogy így néznek ki: Nginx 1

Ez azt mutatja, 3 üzemmód elérhető az Nginx. Az alábbiakban ismertetjük őket:

  • Nginx Full-megnyitja mind a 80-as, mind a 443-as portot. A 80-as Port normál/titkosítatlan forgalomra, azaz http-re vonatkozik. A 443-as Port TLS / SSL titkosított forgalomra vonatkozik. azaz https.
  • Nginx HTTP-csak a 80-as portot nyitja meg.
  • Nginx HTTPS-csak a 443-as portot nyitja meg.

ajánlásként csak azt a profilt engedélyezheti, amely lehetővé teszi a webes alkalmazáshoz konfigurált forgalmat. Ebben az esetben a Nginx HTTP-vel (80-as port) megyünk, mivel nem konfiguráltuk az SSL-t. A következő parancs engedélyezi ezt:

sudo ufw allow 'Nginx HTTP'sudo ufw allow 'OpenSSH'

a változás ellenőrzéséhez írja be a következő parancsot:

sudo ufw status

a terminálnak valami hasonlót kell mutatnia az alábbi képernyőhöz. Vegye figyelembe, hogy a HTTP forgalom mindenhol megengedett:

Nginx 1

3. lépés-a webszerver ellenőrzése

az Nginx Ubuntu 18.04-re történő telepítése után a szolgáltatás automatikusan elindul. Ezt tesztelheti a következő parancs beírásával a terminálba:

systemctl status nginx

a terminálnak valami hasonlót kell megjelenítenie:

Nginx 1

Ez azt mutatja, hogy a szolgáltatás automatikusan elindult, és fut. Mint már tudja, a szerverszoftver fő célja A tartalom kiszolgálása. Ennek a célnak a teszteléséhez egy oldalt kell kérnie. Ezt úgy teheti meg, hogy a szerver IP-címét a böngészőből érheti el, amelynek meg kell jelenítenie az alapértelmezett Nginx céloldalt. Ha nem ismeri a szerver IP-címét, az alábbiakban néhány parancs segít abban, hogy megkapja:

ip addr show ens3 | grep inet | awk '{ print $2; }' | sed 's/\/.*$//'

Az alábbiakban egy másik parancs, amelyet használhat. Megadja a nyilvános IP-címet, amint az az interneten található helyekről látható:

curl -4 icanhazip.com

az első parancs egy címet kap, amint az az alábbi terminálon látható. Ezután másolja le és tesztelje böngészőjében:

böngészője betölti az alapértelmezett Nginx oldalt, amely a következő képernyőképnek tűnik. Ez azt mutatja, hogy a Nginx szerver valóban fut:

Nginx 1

4. lépés – alapvető Nginx kezelési parancsok

már látta azt a parancsot, amely ellenőrzi az Nginx állapotát:

systemctl status nginx

most, hogy a szerver működik, itt van még néhány parancs, amelyet kéznél kell tartania az Nginx szolgáltatás kezeléséhez. Ezek a parancsok nem csak az Ubuntu 18.04-en működnek, hanem minden Linux disztribúción is.

ahhoz, Hogy állítsa le a kiszolgálót, írja be a következő parancsot:

sudo systemctl stop nginx

a szerver elindításához adja ki a következő parancsot:

sudo systemctl start nginx

Amikor jelentős módosítások, mint változik a portok vagy a kapcsolódási pontok, újra kell indítania a web szerver. Az alábbi parancs újraindítja a kiszolgálót:

sudo systemctl restart nginx

Ha kisebb konfigurációs változtatások, mint a szerkesztési kiszolgáló blokk, Nginx lehet újratöltés nélkül célba kapcsolatok. Itt található az újratöltési parancs:

sudo systemctl reload nginx

Nginx automatikusan elindítja a kiszolgálót, amikor az Ubuntu operációs rendszer elindul. Ha azonban meg akarja változtatni ezt a beállítást, letilthatja a szolgáltatást az alábbi parancs beírásával:

sudo systemctl disable nginx

és újra engedélyezheti a szolgáltatás automatikus indítását, amikor legközelebb indítja a gépet:

sudo systemctl enable nginx

5.lépés – Szerverblokkok beállítása

lehet, hogy több webhelyet (domaint) szeretne egy webszerveren tárolni. Szerver blokkok segít elérni ezt. Ha korábban már használta az Apache-t, az Nginx szerverblokkjai összehasonlíthatók az Apache Vhosts-szal. A dobozból az Nginx egy szerverblokkot tartalmaz, amely a /var/www/html könyvtárból fut, amely az alapértelmezett Nginx oldalt egy fenti szakaszba töltötte be. Ez a szerverblokk rendben van, ha egyetlen webhelyet futtat. Sok webhely futtatása azonban problémát jelent.

szeretnénk egy másik webhelyet létrehozni ugyanazon a kiszolgálón, majd hívni samplesite.com (ez csak egy példa, akkor cserélje ki a saját domain nevet).

a / var / www / könyvtárban belül hozzon létre egy másik könyvtárat samplesite.com. hagyja az alapértelmezett / var / www / html-t olyan kérések kiszolgálására, amelyek nem egyeznek meg más webhelyekkel. Az alábbi parancs létrehozza a könyvtárat samplesite.com ahogy már leírtuk. A-P zászló biztosítja, hogy a parancs létrehozza a szükséges szülőkönyvtárakat:

sudo mkdir -p /var/www/samplesite.com/html

a könyvtárhoz való hozzáférés engedélyezéséhez a $user environment változóval kell hozzárendelnie a tulajdonjogot:

sudo chown -R $USER:$USER /var/www/samplesite.com/html

annak ellenőrzéséhez, hogy a web gyökereinek engedélyei helyesek-e, írja be a következő parancsot:

sudo chmod -R 755 /var/www/samplesite.com

következő, hagyja, hogy megpróbál létrehozni egy egyszerű indexet.html a samplesite.com könyvtár. A nano szerkesztőt a következő módon nyithatja meg:

nano /var/www/samplesite.com/html/index.html

a parancs megnyit egy szerkesztőt a terminálon, hozzáadva a következő kódot:

<html><head><title>Welcome to samplesite.com!</title></head><body><h1>Success! The samplesite.com server block is running fine!</h1></body></html>

írja be a Ctrl + O billentyűt, majd nyomja meg az Enter billentyűt a fájl mentéséhez. Írja be a Ctrl + X billentyűt a szerkesztő bezárásához.

ezután létrehozhatja a szerverblokkot. Ahelyett, szerkesztését, túlzsúfoltság az alapértelmezett konfigurációs fájl, ajánlott, hogy egy új, a /etc/nginx/sites-available/samplesite.com. Írja be a következő parancsot, hogy nyissa meg a nano szerkesztő:

sudo nano /etc/nginx/sites-available/samplesite.com

a szerkesztő, adja meg a következő kódot, a módosított könyvtárat hozott létre. Megjegyzés: a gyökérnév és a server_name megegyezik a könyvtárunkkal és a domainünkkel, amit szeretnénk kiszolgálni:

server { listen IP_ADDRESS:80; listen :80; root /var/www/samplesite.com/html; index index.html index.htm index.nginx-debian.html; server_name samplesite.com samplesite.com; location / { try_files $uri $uri/ =404; }}

ezután mentse el és zárja be a fájlt.

az Nginx konfigurációs fájlokat olvas a sites-enabled könyvtárból, ezért létre kell hoznia egy symlink-et az új szerverblokkból a sites-enabled könyvtárba. A következő parancs ezt fogja tenni:

sudo ln -s /etc/nginx/sites-available/samplesite.com /etc/nginx/sites-enabled/ 

most két szerverblokkja van, amelyek két webhelyet szolgálhatnak fel egy Nginx szerveren.

a következő parancs válaszol a tartományok kéréseire samplesite.com és www.samplesite.com.

curl samplesite.com

az alapértelmezett fog reagálni bármilyen kérés üti a 80-as portot, hogy nem egyezik a két kiszolgáló blokk:A Nginx szerver valószínűleg élmény egy hash vödör memória probléma, ha hozzá további kiszolgáló blokk. Ennek elkerülése érdekében egyetlen fájlt kell beállítania az nginxben.conf fájl. Ezután nyissa meg a fájlt a nano szerkesztővel:

sudo nano /etc/nginx/nginx.conf

Ezután keresse meg az irányelvet: server_names_hash_bucket_size és távolítsa el a # szimbólumot a kibontásához, így néz ki:

http { server_names_hash_bucket_size 64;}

ezután mentse el és zárja be a fájlt.

tesztelni, hogy a Nginx fájlok nincs hiba, akkor adja meg a következő parancsot:

sudo nginx -t

Ha mindent rendben találunk, akkor valami ilyesmit kell látnunk:

a konfigurációs változtatások életbe léptetéséhez, először meg kell kezdeni a Nginx szerver használata a parancs az alábbi:

sudo systemctl restart nginx

Most, írja be a domain, meg kell látnia a html-oldal hoztuk létre.

6. lépés – fontos Nginx fájlok és könyvtárak, amelyeket tudnia kell

  • fő tartalom könyvtár

– / var / www / html: Az alapértelmezett nginx oldal ebben a könyvtárban van tárolva. Ez a tényleges tartalom, amelyet a kiszolgáló IP-címének elérésekor lát. Ezt a viselkedést megváltoztathatja az Nginx konfigurációs fájlok megváltoztatásával.

  • Nginx konfigurációs könyvtárak

– / etc / nginx: az összes Nginx konfigurációs fájlt tartalmazó fő könyvtár.

– / etc / nginx / nginx.conf: a fő Nginx konfigurációs fájl, amely megváltoztatható, hogy globális változásokat hajtson végre az Nginx kiszolgálón.

– / etc / nginx / sites-available/: ez az a könyvtár, ahol a Webhelyenkénti szerverblokkokat tárolja. Az összes szerver blokk ebben a mappában található. A symlink összekapcsolja őket a webhelyek által engedélyezett könyvtárral. Ha felsoroljuk ennek a rendezőnek a tartalmát, látnunk kell az általunk létrehozott szerverblokkot, valamint az alapértelmezett Nginx szerverblokkot.

– / etc / nginx / sites-enabled/: az enable per-site szerver blokkok léteznek ebben a könyvtárban. Ezek kapcsolódnak a tényleges konfigurációs fájlokat a sites-elérhető könyvtárban.
– / etc / nginx / töredék/: az a könyvtár, ahol a konfigurációs töredékeket tárolja, amelyek más konfigurációkban is szerepelhetnek – például. ismétlődő konfigurációs töredék.

  • szervernaplók

– /var/log/nginx/access.napló: Ez a fájl rögzíti az összes kérést, amely eléri a kiszolgálót, kivéve, ha konfigurálta az Nginx-et egy másik fájlban való tárolásra vagy valami másra.
– / var / log/nginx / error.napló: Ez a fájl rögzíti az összes Nginx hibát. Ez az, ahol jön a hibaelhárítás, ha a szerver nem fut a várt módon.

következtetés

az út végére értünk. Telepítette az Nginx-et az Ubuntu 18-ra.04, konfigurált tűzfalak, konfigurált szerverblokkok, valamint biztosította, hogy a webhelyek elérhetők legyenek a böngészőjében. Gratulálok! Most rajtad múlik, hogy kitalálja, milyen tartalmat szeretne kiszolgálni a felhasználók számára.

Boldog Számítástechnika!

Related Posts

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük