Hazie Nginx Server Blocks (Virtual Hosts) na CentOS/RHEL 8


Ihe ngọngọ nkesa Nginx bụ otu Apache mebere nnabata ma mee ka o kwe gị omume ịnabata ihe karịrị otu ngalaba ma ọ bụ weebụsaịtị na sava gị.

N'isiokwu a, ị ga-amụta ka esi eguzobe ihe nkesa Nginx (virtual hosts) na CentOS 8 na RHEL 8 Linux.

  • A ndekọ maka ngalaba gị. N'okwu dị mfe, ndekọ A na-ezo aka na ntinye DNS ebe aha ngalaba na-arụtụ aka na IP ọha nke ihe nkesa, na nke a bụ sava weebụ Nginx. N'ime ntuziaka a, anyị ga-eji ngalaba aha crazytechgeek.info.
  • Okpokoro LEMP arụnyere na CentOS 8 ma ọ bụ RHEL 8.
  • Onye ọrụ nbanye nwere ikike Sudo.

Ka anyị malite!

Kwụpụ 1: Mepụta Nginx Document Root Directory

Ozugbo bat, ịkwesịrị ịmepụta ndekọ ndekọ mgbọrọgwụ weebụ omenala maka ngalaba ịchọrọ ịkwado. Maka ikpe anyị, anyị ga-emepụta ndekọ dịka egosiri iji mkdir -p nhọrọ iji mepụta akwụkwọ ndekọ aha nne na nna niile:

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

Mgbe ahụ kenye ikike ndekọ aha site na iji $USER mgbanwe gburugburu. Ka ị na-eme otú ahụ, hụ na ị na-abanye na dị ka onye ọrụ mgbe niile na ọ bụghị mgbọrọgwụ ọrụ.

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

Na-esote, kenye ikike ndekọ ndekọ ziri ezi ugboro ugboro dịka egosiri:

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

Kwụpụ 2: Mepụta ibe nlele maka ngalaba

Na-esote, anyị ga-emepụta faịlụ index.html n'ime ndekọ ndekọ mgbọrọgwụ weebụ omenala nke ngalaba ahụ ga-arụ ọrụ ozugbo a rịọrọ arịrịọ.

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

N'ime faịlụ ahụ, mado ọdịnaya nlele ndị a.

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

Chekwaa wee pụọ na faịlụ nhazi.

Kwụpụ 3: Mepụta Nginx Server Block na CentOS

Maka sava weebụ Nginx iji nye ọdịnaya dị na faịlụ index.html anyị mepụtara na nzọụkwụ 2, anyị kwesịrị ịmepụta faịlụ ngọngọ sava na ntuziaka kwesịrị ekwesị. Ya mere, anyị ga-emepụta ngọngọ sava ọhụrụ na:

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

Na-esote, mado nhazi nke na-egosi n'okpuru.

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;

}

Mgbe ịmechara, chekwaa mgbanwe ndị ahụ wee pụọ na faịlụ nhazi. Iji gosi na nhazi Nginx niile bụ ụda na enweghị njehie, mebie iwu:

$ sudo nginx -t

Ihe mmepụta dị n'okpuru kwesịrị ịbụ nkwenye na ị dị mma ịga!

N'ikpeazụ, malitegharịa sava weebụ Nginx gị wee gosi na ọ na-agba ọsọ dịka a tụrụ anya:

$ sudo systemctl restart nginx
$ sudo systemctl status nginx

Kwụpụ 4: Nyochaa Nginx Server Block na CentOS

Anyị niile mere na nhazi. Naanị akụkụ fọdụrụ bụ iji gosi ma ọ bụrụ na ngọngọ sava anyị na-enye ọdịnaya na ndekọ ndekọ mgbọrọgwụ wee kọwaa na mbụ na faịlụ index.html.

Iji mee nke a, naanị mepee ihe nchọgharị gị wee gaa na ngalaba nkesa gị dị ka egosiri:

http://domain-name

Dị ka a na-ahụ, a na-enye ọdịnaya anyị site na ngọngọ ihe nkesa, ihe ngosi doro anya na ihe niile gara nke ọma.

Kwụpụ 5: Kwado HTTPS na ngalaba akwadoro na Nginx

Ị nwere ike ịtụle izochi ngalaba gị site na iji Lets Encrypt SSL ka ịtinye mkpuchi nchebe yana okporo ụzọ echekwara na site na sava weebụ.

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

Iji gosi na ahaziri ngalaba gị nke ọma na HTTPS, gaa na https://yourwebsite.com/ na ihe nchọgharị gị wee chọọ akara ngosi mkpọchi n'ime ogwe URL.

Anyị ejirila nke ọma melite ngọngọ nkesa Nginx na CentOS 8 na RHEL 8. Ị nwere ike ịmegharị otu ihe ahụ maka ọtụtụ ngalaba site na iji otu usoro ahụ.