Debian 10-da Serwer Bloklary (Wirtual Hostlar) bilen Nginx guruň


Nginx, ters proksi, ýük balansy, keş we başga-da köp zady birleşdirýän gaty meşhur ýokary öndürijilikli web serweridir. Nädip düzülendigine baglylykda, ters proksi, şeýle hem HTTP/HTTPS serwerleri üçin ýük balansy bolup biler.

Nginx web serweri müňlerçe yzygiderli birikmelere hyzmat etmekde ajaýyp ukybyna eýedir we bu, dünýädäki iň işli saýtlaryň ýarysyndan gowragyny işledip, iň çalt web serweri edýär. Bularyň arasynda Netflix, DuckDuckGo we DropBox bar.

Bu gollanmada, Debian 10 serwerinde birnäçe domeni ýerleşdirmek üçin Nginx-i wirtual hostlar bilen nädip gurmalydygyny öwreneris.

Başlamazdan ozal aşakdaky talaplaryň ýerine ýetirilendigine göz ýetiriň:

  1. Debian 10. mysaly.
  2. Serweri görkezýän doly kwalifikasiýa domen ady (FQDN).
  3. Bu gollanmada, 192.168.0.104 IP adresi bolan Debian 10 ulgamyny görkezýän linux-console.net domenini ulanýarys.
  4. Gowy internet birikmesi.

1-nji ädim: Debian 10 paket ammaryny täzeläň

Başga bir zat etmezden ozal ýerli paket ammarymyzy iň soňky wersiýalaryna täzelemeli. Muňa ýetmek üçin sudo aýratynlyklary bolan adaty ulanyjy hökmünde giriň we aşakdaky buýrugy işlediň.

$ sudo apt update -y

2-nji ädim: Debian 10-da Nginx guruň

Nginx Debianyň ammarlarynda barlygy sebäpli, rahatlyk bilen öňe gidip, Debian bilen gelýän apt paket dolandyryjysyny ulanyp gurup bileris.

$ sudo apt install nginx -y

3-nji ädim: Nginx Webserver-iň ýagdaýyny barlamak

Hiç hili ýalňyşlyk görmedik bolsaňyz, Nginx web serweri üstünlikli guruldy. Goşmaça konfigurasiýa etmezden ozal web serweriniň ýagdaýyny barlamak paýhasly.

Nginx-iň ýagdaýyny barlamak üçin ýerine ýetiriň:

$ systemctl status nginx

Web serweri işleýän bolsa, aşakda habarnamany alarsyňyz.

Nginx web serwerini täzeden açmak isleseňiz, buýrugy işlediň.

$ systemctl restart nginx

Nginx-i duruzmak üçin buýruk beriň.

$ systemctl stop nginx

Web serweri açmak üçin işlediň.

$ systemctl start nginx

Başlangyç işine başlamak üçin Nginx web serwerini sazlamak üçin.

$ systemctl enable nginx

4-nji ädim: Nginx portuny açmak üçin diwar diwaryny sazlaň

Nginx üstünlikli gurlup we işledilende, hyzmatlara, esasanam daşarky ulanyjylara web girmegine rugsat bermeli. UFW firewall açyk bolsa, gorag diwary arkaly HTTP girmegine rugsat bermeli.

Muňa ýetmek üçin buýrugy ýerine ýetiriň.

$ sudo ufw allow 'Nginx HTTP'

Ondan soň, üýtgeşmeleri amala aşyrmak üçin gorag diwaryny täzeden açyň.

$ sudo ufw reload

Ajaýyp, indi işledip, diwar diwary arkaly HTTP-e rugsat berilendigini barlap bilersiňiz.

$ sudo ufw status

Aboveokardaky bölekden, UFW gorag diwary arkaly Nginx HTTP-e rugsat berilendigini aýdyň görýäris.

5-nji ädim: Nginx web serwerine girmek

Nginx-i işletmek we işletmek üçin şu wagta çenli esasy konfigurasiýalary etdik. Web brauzeri arkaly web serwerine girmek üçin serweriň IP adresine görkezilişi ýaly göz aýlaň.

http://server-IP-address

Bu, Nginx-iň işleýändigini we işleýändigini tassyklaýar.

6-njy ädim: Debian 10-da Nginx serwer bloklaryny düzmek

Bu islege bagly ädim we Nginx web serwerinde birnäçe domeni ýerleşdirmek isleseňiz peýdalydyr. Munuň işlemegi üçin Debian serweriňize gönükdirilen domen ady bolmaly.

Bu bölüm üçin, A ýazgysy serweriň IP 192.168.0.104 görkezilen linux-console.net domen adyny ulanarys.

Domen adyny serweriňiziň IP adresine görkezeniňizde, domen ady ýakyn wagtda üýtgär we görkezilişi ýaly web serweriňize görkeziler.

Geliň indi serwer blokuny döredeliň.

Ilki bilen, görkezilişi ýaly domenimiz üçin katalog döredeliň.

$ sudo mkdir -p /var/www/html/linux-console.net

Soňra görkezilişi ýaly zerur faýl eýeçiligini belläň.

$ sudo chown -R $USER:$USER /var/www/html/linux-console.net

Ondan soň, görkezilişi ýaly topara we köpçülige ulanyjylara okamak we rugsat bermek.

$ sudo chmod -R 755 /var/www/html/linux-console.net

Indi vim tekst redaktoryny ulanyp, ýönekeý index.html nusga web sahypasyny döredeliň.

$ sudo vim /var/www/html/linux-console.net/index.html

Faýla käbir nusga mazmuny goşuň. Bu brauzerde görkeziler.

<html>
    <head>
        <title>Welcome to Linux geeks</title>
    </head>
    <body>
        <h1>Success! Welcome to your new server block on Tecmint Nginx Web Server !</h1>
    </body>
</html>

Redaktory ýazdyryň we çykyň

Bu mazmuna hyzmat etmek üçin serwer blokuny döretmeli.

Serwer blokuny döredeliň

$ vim  /etc/nginx/sites-available/linux-console.net

Aşakdaky mazmuny serwer blok faýlyna göçüriň.

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

        root /var/www/html/linux-console.net;
        index index.html index.htm index.nginx-debian.html;

        server_name linux-console.net linux-console.net;

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

linux-console.net domen adyny öz domen adyňyz bilen täzeläň.

Serwer blok faýlyny işjeňleşdirmek ýa-da işletmek üçin görkezilişi ýaly simwoliki baglanyşyk dörediň.

$ sudo ln -s /etc/nginx/sites-available/linux-console.net /etc/nginx/sites-enabled/

Nginx-daky ähli sazlamalaryň dogry düzülendigini barlamak üçin işlediň.

$ sudo nginx -t

Gowy, gitmek gowy! Ahyrynda Nginx-i täzeden açyň.

$ sudo systemctl restart nginx

Brauzeriňize çykyň we täzeläň, hemmesi gowy bolsa, brauzer görkezilişi ýaly serwer blok web sahypasyna hyzmat etmeli.

7-nji ädim: Nginx Log Faýllaryna girmek

Serweriňize edilen haýyşlar barada gündelik faýllara girmek üçin aşakdaky faýla giriň.

$ sudo vim /var/log/nginx/access.log 

Nginx web serweriňizdäki ýalňyşlyklara ýol beren bolsaňyz, faýly ýalňyşlyklar üçin gözden geçiriň.

$ sudo vim /var/log/nginx/error.log

Bu gollanmada, “Debian 10” mysalynda Nginx-i nädip gurmalydygyny we goşmaça domenleri goldamak üçin hasam sazlamagy öwrendiňiz. Bu gollanmany paýhasly taparsyňyz diýip umyt edýäris. Pikirleriňiz minnetdar bolar ..