Kaip nustatyti „Nginx“ serverio blokus (virtualiuosius pagrindinius kompiuterius) „Ubuntu 20.04“


Kartais gali reikėti priglobti daugiau nei vieną domeną arba svetainę savo Nginx žiniatinklio serveryje. Kad tai įvyktų, reikia sukonfigūruoti Serverio bloką (Virtualiuosius pagrindinius kompiuterius), kad būtų įtraukta visa domeno konfigūracija. „Nginx“ serverio blokai yra Apache virtualiosios prieglobos failų sinonimai ir tarnauja tam pačiam tikslui.

Šioje temoje parodyta, kaip nustatyti Nginx serverio bloką Ubuntu 20.04.

Būtinos sąlygos:

  • Jūsų domeno vardo prieglobos teikėjo nustatytas A įrašas. A įrašas yra DNS įrašas, nurodantis domeno pavadinimą į viešojo serverio IP adresą. Šiam vadovui iliustravimo tikslais naudosime domeno pavadinimą crazytechgeek.info.
  • Nginx serveris arba LEMP Stack įdiegtas Ubuntu 20.04 LTS egzemplioriuje.
  • Prisijungimo vartotojas, turintis Sudo teises.

Įvykdę visus reikalavimus, panagrinėkime, kaip galite nustatyti Nginx serverio bloką Ubuntu.

1 veiksmas: sukurkite „Nginx“ dokumentų šakninį katalogą

Norėdami pradėti, savo domenui sukursime atskirą katalogą, kuriame bus visi su domenu susiję nustatymai.

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

Tada priskirkite katalogo nuosavybės teisę naudodami aplinkos kintamąjį $USER. Tai priskiria katalogo nuosavybės teisę šiuo metu prisijungusiam vartotojui. Įsitikinkite, kad esate prisijungę naudodami įprastą vartotojo paskyrą, o ne kaip root.

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

Tada priskirkite atitinkamus leidimus katalogui, suteikdami prisijungusiam vartotojui visas teises (skaityti, rašyti ir vykdyti), o grupei ir kitiems vartotojams – tik skaitymo ir vykdymo teises.

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

Teisingai sukonfigūravus katalogo leidimus ir nuosavybės teisę, turime sukurti pavyzdinį domeno tinklalapį.

2 veiksmas: sukurkite pavyzdinį domeno puslapį

Šiame žingsnyje mes sukursime index.html failą bandymo tikslais. Šis failas pateiks turinį, kuris bus rodomas žiniatinklio naršyklėje, kai naršyklėje bus iškviestas domenas.

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

Įklijuokite šį HTML turinį.

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

Išsaugokite ir išeikite iš konfigūracijos failo.

3 veiksmas: sukurkite „Nginx“ serverio bloką „Ubuntu“.

Nginx serverio blokai yra kataloge /etc/nginx/sites-available. Numatytasis Nginx serverio blokas yra /etc/nginx/sites-available/default, kuris aptarnauja numatytąjį HTML failą adresu /var/www/html/index.nginx-debian.html >.

Mūsų atveju turime sukurti serverio bloką, kuris pateiks turinį index.html faile, kurį sukūrėme anksčiau.

Taigi sukurkite parodytą serverio bloko failą.

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

Įklijuokite turinį žemiau:

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;

}

Išsaugokite ir išeikite iš failo.

4 veiksmas: Ubuntu įgalinkite Nginx serverio bloką

Norėdami įjungti Nginx serverio bloką, turite susieti jį su /etc/nginx/sites-enabled/ katalogu, kaip parodyta.

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

Šiuo metu mes beveik baigėme. Tačiau protinga patvirtinti, kad visos konfigūracijos yra tvarkingos. Norėdami tai padaryti, vykdykite komandą:

sudo nginx -t

Jei teisingai atlikote mūsų veiksmus, turėtumėte gauti rodomą išvestį:

Galiausiai iš naujo paleiskite Nginx, kad konfigūracijos failų pakeitimai įsigaliotų.

sudo systemctl restart Nginx

Tada patvirtinkite, ar Nginx veikia, vykdydami parodytą komandą:

sudo systemctl status Nginx

5 veiksmas: „Nginx“ serverio bloko išbandymas Ubuntu

Norėdami patikrinti, ar serverio blokas veikia taip, kaip tikėtasi, ir aptarnauja turinį kataloge /var/www/crazytechgeek.info, atidarykite žiniatinklio naršyklę ir naršykite savo serverio domeno pavadinimą:

http://domain-name

Turėtumėte gauti turinį, esantį jūsų serverio bloko HTML faile, kaip parodyta.

Išvada

Šiame vadove parodėme, kaip nustatyti Nginx serverio bloką naudojant vieną domeną sistemoje Ubuntu Linux. Galite pakartoti tuos pačius veiksmus skirtinguose domenuose ir vis tiek pasiekti tuos pačius rezultatus. Tikimės, kad vadovas buvo įžvalgus.