Weboldal keresés

Az Nginx webkiszolgáló telepítése az Ubuntu 20.04 rendszeren


Az Nginx egy nyílt forráskódú, nagy teljesítményű webszerver, amely hatalmas piaci részesedéssel rendelkezik az éles környezetben. Ez egy könnyű és robusztus webszerver, amelyet többnyire nagy forgalmú webhelyek tárolására használnak.

Kapcsolódó olvasmány: Az Apache webszerver telepítése Ubuntu 20.04-re

Ebből az útmutatóból megtudhatja, hogyan telepítheti az Nginx webszervert, és hogyan konfigurálhatja az Nginx szerverblokkot (virtuális gazdagépeket) az Ubuntu 20.04 LTS rendszeren.

Előfeltételek

A kezdéshez győződjön meg arról, hogy rendelkezik az Ubuntu 20.04 LTS példányával SSH-hozzáféréssel és egy Sudo-felhasználóval root jogosultságokkal. Ezenkívül az Nginxcsomagok telepítéséhez ajánlott egy stabil internetkapcsolat.

Az Nginx telepítése Ubuntu 20.04-re

1. Az Nginx telepítése előtt frissítse szervere csomaglistáját.

sudo apt update

2. Ezután telepítse az Nginx programot a következő parancs futtatásával:

sudo apt install nginx

Amikor a rendszer felszólítja a folytatásra, nyomja meg a 'Y' billentyűt a billentyűzeten, és nyomja le az ENTER billentyűt. A telepítés néhány másodpercen belül megtörténik.

3. Ha az Nginx sikeresen telepítve van, elindíthatja és ellenőrizheti a következő futtatásával:

sudo systemctl start nginx
sudo systemctl status nginx

A fenti kimenet egyértelműen jelzi, hogy az Nginx fut.

4. Az Nginx verziójának ellenőrzéséhez futtassa:

sudo dpkg -l nginx

A kimenet azt jelzi, hogy az Nginx 1.17.10 verziót futtatjuk, amely a cikk írásakor a legújabb verzió.

Nyissa meg az Nginx portokat az UFW tűzfalon

Most, hogy az Nginx telepítve van, és a várt módon fut, néhány módosítás szükséges ahhoz, hogy az Nginx böngészőn keresztül elérhető legyen. Ha az UFW tűzfalat használja, engedélyeznie kell az Nginx alkalmazásprofilt.

Az ufw tűzfalhoz 3 Nginx profil tartozik.

  1. Teljes Nginx – Megnyitja a 80-as és a 443-as portot (SSL/TLS titkosításhoz).
  2. Nginx HTTP – Ez csak a 80-as port nyitott (titkosítatlan webforgalomhoz).
  3. Nginx HTTPS – Csak a 443-as portot nyitja meg (SSL/TLS titkosításhoz).

5. Kezdje a tűzfal engedélyezésével az Ubuntu 20.04 rendszeren.


sudo ufw enable

6. Egyelőre, mivel nem vagyunk titkosított szerveren, csak az Nginx HTTP profilt engedélyezzük, amely a 80 porton engedélyezi a forgalmat. .

sudo ufw allow 'Nginx HTTP'

7. Ezután töltse be újra a tűzfalat, hogy a változások megmaradjanak.

sudo ufw reload

8. Most ellenőrizze a tűzfal állapotát az engedélyezett profilok ellenőrzéséhez.

sudo ufw status

Az Nginx tesztelése Ubuntu 20.04-en

Az Nginx úgy fut a böngészőben, ahogyan azt bármely webszervernél elvárná, és a legbiztosabb módja annak, hogy tesztelje, hogy az elvárásoknak megfelelően működik-e, ha kéréseket küld egy böngészőn keresztül.

9. Tehát lépjen a böngészőjébe, és böngésszen a szerver IP-címe vagy domain neve között. A szerver IP-címének ellenőrzéséhez futtassa az ifconfig parancsot:

ifconfig

10. Ha felhőszerveren dolgozik, futtassa az alábbi curl parancsot a szerver nyilvános IP-címének lekéréséhez.

curl ifconfig.me

11. Böngészője URL-mezőjébe írja be szervere IP-címét vagy domainnevét, és nyomja meg az ENTER gombot.

http://server-IP or domain-name

Meg kell kapnia egy alapértelmezett Nginx üdvözlőoldalt, ahogy az ábra mutatja.

Az Nginx folyamat kezelése az Ubuntu 20.04-ben

12. Az Nginx webszerver leállításához egyszerűen futtassa:

sudo systemctl stop nginx

13. A webszerver újraindításához hajtsa végre:

sudo systemctl start nginx

14. Az Nginx automatikus indítása rendszerindításkor vagy újraindításkor:

sudo systemctl enable nginx

15. Ha újra szeretné indítani a webszervert, különösen a konfigurációs fájlok módosítása után, futtassa:

sudo systemctl restart nginx

16. Alternatív megoldásként az ábrán látható módon újratöltheti, hogy elkerülje a kapcsolatok megszakadását.

sudo systemctl reload nginx

Az Nginx Server Block konfigurálása az Ubuntu 20.04-ben

Ha egynél több webhelyet tervez üzemeltetni a szerverén, akkor erősen ajánlott egy Nginx szerverblokk beállítása. A szerverblokk az Apache virtuális gazdagépének megfelelője.

Alapértelmezés szerint az Nginx alapértelmezett szerverblokkjával kerül szállításra, amely úgy van beállítva, hogy a webes tartalmat a /var/www/html útvonalon szolgálja ki.

Létrehozunk egy külön Nginx blokkot domainünk tartalmának kiszolgálására. Ebben az útmutatóban a crazytechgeek.info domaint fogjuk használni.
Az Ön esetében győződjön meg róla, hogy ezt a saját domain nevére cseréli.

17. Szerverblokkfájl létrehozásához először hozzon létre egy könyvtárat a domainhez az ábra szerint.

sudo mkdir -p /var/www/crazytechgeek.info/html

18. Ezután rendelje hozzá a tulajdonjogot az új könyvtárhoz a $USER változó használatával.

sudo chown -R $USER:$USER /var/www/crazytechgeek.info/html

19. Győződjön meg arról, hogy a címtárjogosultságokat is ennek megfelelően rendeli hozzá, lehetővé téve a tulajdonosnak az összes (olvasási, írási és végrehajtási) engedélyt, más feleknek pedig csak olvasási és végrehajtási engedélyeket adva.

sudo chmod -R 755 /var/www/crazytechgeek.info

20. A domain könyvtárában hozzon létre egy index.html fájlt, amely tartalmazza a domain webes tartalmát.

sudo vim /var/www/crazytechgeek.info/html/index.html

Illessze be az alábbi tartalmat a minta tesztelési fájlba.

<html>
    <head>
        <title>Welcome to your_domain!</title>
    </head>
    <body>
        <h1>Bravo! Your server block is working as expected!</h1>
    </body>
</html>

Mentse el a változtatásokat, és lépjen ki a fájlból.

21. Ahhoz, hogy az Nginx webszerver kiszolgálja az imént hozzáadott tartalmat, létre kell hoznia egy szerverblokkot a megfelelő direktívákkal. Ebben az esetben létrehoztunk egy új szerverblokkot a következő címen:

sudo vim /etc/nginx/sites-available/crazytechgeek.info

Illessze be a látható konfigurációt.

server {
        listen 80;
        listen [::]:80;

        root /var/www/crazytechgeek.info/html;
        index index.html index.htm index.nginx-debian.html;

        server_name crazytechgeek.info  www.crazytechgeek.info;

        location / {
                try_files $uri $uri/ =404;
        }
}

Mentés és kilépés.

22. Most engedélyezze a szerverblokkfájlt úgy, hogy összekapcsolja azt a webhelyek engedélyezése könyvtárával, amelyből az Nginx szerver olvassa az indításkor.

sudo ln -s /etc/nginx/sites-available/crazytechgeek.info /etc/nginx/sites-enabled/

23. A módosítások végrehajtásához indítsa újra az Nginx webszervert.

sudo systemctl restart nginx

24. Annak érdekében, hogy minden konfiguráció rendben legyen, futtassa a következő parancsot:

nginx -t

Ha minden konfiguráció rendben van, akkor az alábbi kimenetet kell kapnia:

25. Mostantól az Nginx webszervernek kell kiszolgálnia a domain tartalmát. Ismét lépjen be a böngészőbe, és böngésszen a szerver domainjében.

http://domain-name

A domain címtárában lévő egyéni tartalmat a képen látható módon jelenítjük meg.

Fontos Nginx konfigurációs fájlok

Mielőtt befejeznénk, döntő fontosságú, hogy megvizsgáljunk néhány fontos konfigurációs fájlt, amelyek az Nginxhez kapcsolódnak.

Nginx konfigurációs fájlok

  • /etc/nginx/nginx.conf: Ez a fő konfigurációs fájl. Módosíthatja a beállításokat, hogy megfeleljenek a szerver követelményeinek.
  • /etc/nginx/sites-available: Ez az a könyvtár, amely a szerverblokk konfigurációját tárolja. Az Nginx csak akkor használja a szerverblokkokat, ha azok a webhely-engedélyezett könyvtárhoz kapcsolódnak.
  • /etc/nginx/sites-enabled: A könyvtár webhelyenkénti Nginx-szerverblokkokat tartalmaz, amelyek már engedélyezettek.

Nginx naplófájlok

Két fő naplófájl használható az Nginx webszerver hibaelhárítására:

  • /var/log/nginx/access.log: Ez naplózza a webszervernek küldött összes kérést.
  • /var/log/nginx/error.log: Ez a hibanaplófájl, és rögzíti az összes hibát, amellyel az Nginx találkozik.
Következtetés

Elérkeztünk ennek az oktatóanyagnak a végéhez. Megmutattuk, hogyan telepítheti az Nginxet az Ubuntu 20.04 rendszerre, és hogyan állíthat be Nginx szerverblokkokat a domain tartalmának kiszolgálására. Szívesen fogadjuk visszajelzését.