Weboldal keresés

Állítsa be az Nginx szerverblokkokat (virtuális gazdagépeket) a CentOS/RHEL 8 rendszeren


Az Nginx szerverblokk egy Apache virtuális gazdagépnek felel meg, és lehetővé teszi, hogy egynél több domaint vagy webhelyet tároljon a szerverén.

Ebből a cikkből megtudhatja, hogyan állíthat be Nginx szerverblokkokat (virtuális gazdagépeket) CentOS 8 és RHEL 8 Linux rendszeren.

Előfeltételek:

  • Egy A rekord a domainjéhez. Egyszerűen fogalmazva, az A rekordok egy DNS-bejegyzésre utalnak, ahol a tartománynév a kiszolgáló nyilvános IP-címére mutat, ebben az esetben az Nginx webszerverre. Ebben az útmutatóban a crazytechgeek.info domain nevet fogjuk használni.
  • CentOS 8 vagy RHEL 8 példányra telepített Nginx szerver vagy LEMP Stack.
  • Egy bejelentkező felhasználó Sudo jogosultságokkal.

Kezdjük el!

1. lépés: Hozzon létre egy Nginx dokumentum gyökérkönyvtárat

Azonnal létre kell hoznia egy egyéni webes gyökérkönyvtárat a tárolni kívánt tartományhoz. A mi esetünkben az mkdir -p kapcsolóval létrehozzuk a könyvtárat az alábbi módon, hogy létrehozzuk az összes szükséges szülőkönyvtárat:

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

Ezt követően rendelje hozzá a könyvtár engedélyeit a $USER környezeti változó használatával. Ennek során győződjön meg arról, hogy normál felhasználóként van bejelentkezve, nem pedig root felhasználóként.

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

Ezután rekurzívan rendelje hozzá a megfelelő könyvtárjogosultságokat az alábbi módon:

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

2. lépés: Hozzon létre egy mintaoldalt a tartományhoz

Ezután létrehozunk egy index.html fájlt az egyéni webes gyökérkönyvtárban, amelyet a tartomány fog kiszolgálni, amint egy kérés érkezik.

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

Illessze be a következő mintatartalmat a fájlba.

<html>
    <head>
        <title>Welcome to your_domain!</title>
    </head>
    <body>
  <h1>Awesome! Your Nginx server block is working!</h1>
    </body>
</html>

Mentse el, és lépjen ki a konfigurációs fájlból.

3. lépés: Hozzon létre egy Nginx-kiszolgálóblokkot a CentOS-ben

Ahhoz, hogy az Nginx webszerver kiszolgálja az általunk a 2. lépésben létrehozott index.html fájl tartalmát, létre kell hoznunk egy szerverblokk fájlt a megfelelő direktívákkal. Ezért létrehozunk egy új szerverblokkot a következő címen:

sudo vim /etc/nginx/conf.d/crazytechgeek.info.conf

Ezután illessze be az alábbi 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;
        }

		
    access_log /var/log/nginx/crazytechgeek.info.access.log;
    error_log /var/log/nginx/crazytechgeek.info.error.log;

}

Ha végzett, mentse a változtatásokat, és lépjen ki a konfigurációs fájlból. Ha meg szeretné győződni arról, hogy az Nginx összes konfigurációja egészséges és hibamentes, hajtsa végre a következő parancsot:

sudo nginx -t

Az alábbi kimenetnek meg kell erősítenie, hogy készen áll!

Végül indítsa újra az Nginx webszervert, és ellenőrizze, hogy a várt módon működik-e:

sudo systemctl restart nginx
sudo systemctl status nginx

4. lépés: Az Nginx Server Block tesztelése a CentOS rendszerben

Mindannyian végeztünk a konfigurációkkal. Az egyetlen hátralévő rész annak ellenőrzése, hogy szerverblokkunk az index.html fájlban korábban meghatározott web gyökérkönyvtárában található-e tartalmat.

Ehhez egyszerűen nyissa meg a böngészőt, és lépjen a kiszolgáló domainjére az alábbi módon:

http://domain-name

Amint azt megfigyeltük, tartalmainkat a szerverblokk szolgálja ki, ami egyértelműen jelzi, hogy minden rendben ment.

5. lépés: Engedélyezze a HTTPS-t az Nginx-en tárolt tartományon

Fontolja meg a domain titkosítását a SSL titkosítás használatával, hogy egy védelmi réteget és biztonságos forgalmat adjon a webszerver felé és onnan.

sudo dnf install certbot python3-certbot-nginx
sudo certbot --nginx

Ha meg szeretné győződni arról, hogy domainje megfelelően van konfigurálva a HTTPS-en, keresse fel a https://yourwebsite.com/ webhelyet böngészőjében, és keresse meg a lakat ikont az URL-sávban.

Következtetés

Sikeresen beállítottunk egy Nginx szerverblokkot CentOS 8 és RHEL 8 rendszeren. Ugyanezt megismételheti több tartományhoz ugyanazzal az eljárással.