Kako nastaviti strežniške bloke Nginx (navidezni gostitelji) na CentOS 8


Blok strežnika Nginx je enakovreden navideznemu gostitelju Apache in vam omogoča, da na strežniku gostite več domen ali spletnih mest.

V tem članku boste izvedeli, kako nastaviti strežniške bloke Nginx (navidezni gostitelji) na CentOS 8 in RHEL 8 Linux.

  • A zapis za vašo domeno. Enostavno povedano, zapis A se nanaša na vnos DNS, kjer je ime domene usmerjeno na javni IP strežnika, v tem primeru na spletni strežnik Nginx. V celotnem vodniku bomo uporabljali ime domene crazytechgeek.info .
  • LEMP sklad, nameščen na primerku CentOS 8 ali RHEL 8.
  • Uporabnik za prijavo s privilegiji Sudo.

Začnimo!

1. korak: Ustvarite korenski imenik dokumentov Nginx

Takoj morate ustvariti spletni korenski imenik po meri za domeno, ki jo želite gostiti. V našem primeru bomo ustvarili imenik, kot je prikazano z uporabo možnosti mkdir -p , da ustvarimo vse potrebne nadrejene imenike:

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

Nato dodelite dovoljenja za imenik z uporabo spremenljivke okolja $USER . Pri tem zagotovite, da ste prijavljeni kot običajni uporabnik in ne kot korenski uporabnik.

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

Nato rekurzivno dodelite prava dovoljenja za imenik, kot je prikazano:

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

2. korak: Ustvarite vzorčno stran za domeno

Nato bomo v prilagojenem spletnem korenskem imeniku ustvarili datoteko index.html , ki jo bo domena stregla, ko bo podana zahteva.

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

V datoteko prilepite naslednjo vzorčno vsebino.

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

Shranite in zapustite konfiguracijsko datoteko.

3. korak: v CentOS-u ustvarite blok strežnika Nginx

Da bo spletni strežnik Nginx služil vsebini v datoteki index.html , ki smo jo ustvarili v 2. koraku, moramo ustvariti datoteko blokov strežnika z ustreznimi direktivami. Zato bomo ustvarili nov strežniški blok na:

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

Nato prilepite konfiguracijo, ki se pojavi spodaj.

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;

}

Ko končate, shranite spremembe in zapustite konfiguracijsko datoteko. Če želite potrditi, da so vse konfiguracije Nginxa brez zvoka in brez napak, izvedite ukaz:

$ sudo nginx -t

Rezultat spodaj naj bo potrditev, da ste pripravljeni!

Na koncu ponovno zaženite spletni strežnik Nginx in se prepričajte, da deluje po pričakovanjih:

$ sudo systemctl restart nginx
$ sudo systemctl status Nginx

4. korak: Testiranje strežniškega bloka Nginx v CentOS

Vsi smo končali s konfiguracijami. Preostane le še potrditev, ali naš strežniški blok streže vsebino v spletnem korenskem imeniku, določenem prej v datoteki index.html .

Če želite to narediti, preprosto odprite brskalnik in pojdite na domeno strežnika, kot je prikazano:

http://domain-name

Kot smo že opazili, našo vsebino streže strežniški blok, kar jasno kaže, da je vse potekalo dobro.

5. korak: Omogočite HTTPS v domeni, ki gostuje v Nginxu

Lahko razmislite o šifriranju svoje domene z uporabo Lets Encrypt SSL, da dodate zaščito in zaščitite promet na spletni strežnik in z njega.

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

Če želite potrditi, da je vaša domena pravilno konfigurirana na HTTPS, v brskalniku obiščite https://yourwebsite.com/ in v vrstici URL poiščite ikono ključavnice.

Uspešno smo nastavili strežniški blok Nginx na CentOS 8 in RHEL 8. Z istim postopkom lahko ponovite isto za več domen.