Kako nastaviti strežniške bloke Nginx (navidezni gostitelji) v Ubuntu 20.04


Včasih boste morda morali na spletnem strežniku Nginx gostiti več domen ali spletnih mest. Da bi se to zgodilo, je treba konfigurirati strežniški blok (navidezni gostitelji), ki zajema vse konfiguracije vaše domene. Bloki strežnikov Nginx so sinonim za datoteke navideznega gostitelja Apache in imajo isti namen.

Ta tema prikazuje, kako nastaviti blok strežnika Nginx v Ubuntu 20.04.

  • A zapis, definiran pri ponudniku gostovanja za vaše domensko ime. Zapis je zapis DNS, ki usmerja ime domene na naslov IP javnega strežnika. V tem priročniku bomo za ponazoritev uporabili ime domene crazytechgeek.info .
  • LEMP sklad, nameščen na primerku Ubuntu 20.04 LTS.
  • Uporabnik za prijavo s privilegiji Sudo.

Z vsemi izpolnjenimi zahtevami raziščimo, kako lahko nastavite blok strežnika Nginx v Ubuntuju.

1. korak: Ustvarite korenski imenik dokumentov Nginx

Za začetek bomo ustvarili ločen imenik za našo domeno, ki bo vseboval vse nastavitve, povezane z domeno.

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

Nato dodelite lastništvo imenika s spremenljivko okolja $ USER . To dodeli lastništvo imenika trenutno prijavljenemu uporabniku. Prepričajte se, da ste prijavljeni z običajnim uporabniškim računom in ne kot root.

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

Nato imeniku dodelite ustrezna dovoljenja, tako da prijavljenemu uporabniku dodelite vse pravice (branje, pisanje in izvajanje), skupina in drugi uporabniki pa samo dovoljenja za branje in izvajanje.

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

S pravilno konfiguriranimi dovoljenji za imenik in lastništvom moramo ustvariti vzorčno spletno stran za domeno.

2. korak: Ustvarite vzorčno stran za domeno

V tem koraku bomo ustvarili datoteko index.html za namene testiranja. Ta datoteka bo služila vsebini, ki bo prikazana v spletnem brskalniku, ko bo v brskalniku poklicana domena.

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

Prilepite naslednjo vsebino HTML.

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

Shranite in zapustite konfiguracijsko datoteko.

3. korak: Ubuntu ustvarite blok strežnika Nginx

Bloki strežnikov Nginx se nahajajo v imeniku /etc/nginx/sites-available . Privzeti blok strežnika Nginx je /etc/nginx/sites-available/default , ki služi privzeti datoteki HTML na /var/www/html/index.nginx-debian.html.

V našem primeru moramo ustvariti strežniški blok, ki bo služil vsebini v datoteki index.html , ki smo jo ustvarili prej.

Torej, ustvarite prikazano datoteko strežniškega bloka.

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

Spodnjo vsebino prilepite:

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;

}

Shranite in zapustite datoteko.

4. korak: Omogočite blokado strežnika Nginx v Ubuntuju

Če želite omogočiti strežniški blok Nginx, ga morate simbolično povezati v imenik /etc/nginx/sites-enabled/, kot je prikazano.

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

V tem trenutku smo že precej opravljeni. Vendar je smotrno potrditi, da so vse konfiguracije v redu. Če želite to narediti, izvedite ukaz:

$ sudo nginx -t

Če ste pravilno sledili našim korakom, bi morali dobiti prikazane rezultate:

Na koncu znova zaženite Nginx, da bodo spremembe v konfiguracijskih datotekah začele veljati.

$ sudo systemctl restart Nginx

Nato potrdite, ali se Nginx izvaja, tako da zaženete prikazani ukaz:

$ sudo systemctl status Nginx

5. korak: Testiranje strežniškega bloka Nginx v Ubuntuju

Če želite potrditi, ali strežniški blok deluje po pričakovanjih in ali streže vsebino v imeniku /var/www/crazytechgeek.info , odprite spletni brskalnik in brskajte po domenskem imenu strežnika:

http://domain-name

Vsebino v datoteki HTML bi morali dobiti v strežniškem bloku, kot je prikazano.

V tem priročniku smo vam pokazali, kako nastavite blok strežnika Nginx z uporabo ene domene v Ubuntu Linux. Ponovite lahko iste korake za različne domene in kljub temu dosežete enake rezultate. Upamo, da je bil vodnik pronicljiv.