Kā iestatīt Nginx servera blokus (virtuālos resursdatorus) Ubuntu 20.04


Reizēm Nginx tīmekļa serverī, iespējams, vajadzēs mitināt vairāk nekā vienu domēnu vai vietni. Lai tas notiktu, ir jākonfigurē servera bloks (virtuālie saimnieki), lai aptvertu visu jūsu domēna konfigurāciju. Nginx serveru bloki ir Apache virtuālo resursdatoru failu sinonīmi un kalpo tam pašam mērķim.

Šī tēma parāda, kā iestatīt Nginx servera bloku operētājsistēmā Ubuntu 20.04.

  • A ieraksts, kas definēts jūsu domēna vārdu mitināšanas pakalpojumu sniedzējā. A ieraksts ir DNS ieraksts, kas norāda domēna nosaukumu uz publiskā servera IP adresi. Šajā ceļvedī ilustrācijas nolūkiem izmantosim domēna nosaukumu crazytechgeek.info .
  • LEMP kaudze, kas instalēta Ubuntu 20.04 LTS instancē.
  • pieteikšanās lietotājs ar Sudo privilēģijām.

Izpildot visas prasības, izpētīsim, kā jūs varat iestatīt Nginx servera bloku Ubuntu.

1. darbība: izveidojiet Nginx dokumenta saknes direktoriju

Lai sāktu, mēs savam domēnam izveidosim atsevišķu direktoriju, kurā būs visi ar domēnu saistītie iestatījumi.

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

Pēc tam piešķiriet direktorija īpašumtiesības, izmantojot vides mainīgo $ USER . Tas piešķir direktorija īpašumtiesības pašreiz reģistrētajam lietotājam. Pārliecinieties, vai esat pieteicies, izmantojot parastā lietotāja kontu, nevis kā root.

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

Pēc tam piešķiriet direktorijai atbilstošās atļaujas, piešķirot reģistrētajam lietotājam visas tiesības (lasīšanas, rakstīšanas un izpildes tiesības), kā arī grupai un citiem lietotājiem lasīšanas un izpildīšanas atļaujas.

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

Pareizi konfigurējot direktoriju atļaujas un īpašumtiesības, mums ir jāizveido domēna tīmekļa lapas paraugs.

2. darbība: izveidojiet domēna lapas paraugu

Šajā solī mēs testēšanas vajadzībām izveidosim failu index.html . Šis fails apkalpos saturu, kas tiks parādīts tīmekļa pārlūkprogrammā, kad pārlūkprogrammā tiek izsaukts domēns.

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

Ielīmējiet šo HTML saturu.

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

Saglabājiet konfigurācijas failu un izejiet no tā.

3. solis: Izveidojiet Nginx servera bloku Ubuntu

Nginx servera bloki atrodas direktorijā /etc/nginx/sites-available . Noklusējuma Nginx servera bloks ir /etc/nginx/sites-available/default , kas kalpo noklusējuma HTML failam vietnē /var/www/html/index.nginx-debian.html.

Mūsu gadījumā mums ir jāizveido servera bloks, kas kalpos saturam iepriekš izveidotajā failā index.html .

Tātad, izveidojiet parādīto servera bloka failu.

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

Zemāk ielīmējiet saturu:

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;

}

Saglabājiet un izejiet no faila.

4. solis: iespējojiet Nginx servera bloku Ubuntu

Lai iespējotu servera bloku Nginx, jums tas ir jāsaista ar direktoriju /etc/nginx/sites-enabled/, kā parādīts.

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

Šajā brīdī mēs esam diezgan paveikuši. Tomēr ir saprātīgi apstiprināt, ka visas konfigurācijas ir kārtībā. Lai to izdarītu, izpildiet komandu:

$ sudo nginx -t

Ja pareizi izpildījāt mūsu darbības, jums vajadzētu iegūt parādīto rezultātu:

Visbeidzot, restartējiet Nginx, lai stātos spēkā konfigurācijas failos veiktās izmaiņas.

$ sudo systemctl restart Nginx

Pēc tam apstipriniet, vai Nginx darbojas, izpildot parādīto komandu:

$ sudo systemctl status Nginx

5. solis: Nginx servera bloka pārbaude Ubuntu

Lai apstiprinātu, vai servera bloks darbojas, kā paredzēts, un vai tas satur saturu direktorijā /var/www/crazytechgeek.info , atveriet tīmekļa pārlūkprogrammu un pārlūkojiet sava servera domēna nosaukumu:

http://domain-name

Servera blokā ir jāiegūst HTML failā ietvertais saturs, kā parādīts.

Šajā rokasgrāmatā mēs esam parādījuši, kā iestatīt Nginx servera bloku, izmantojot vienu domēnu Ubuntu Linux. Jūs varat atkārtot tās pašas darbības dažādiem domēniem un joprojām sasniegt tos pašus rezultātus. Mēs ceram, ka ceļvedis bija ieskatīgs.