Määritä Nginx-palvelinlohkot (virtuaaliset isännät) CentOS/RHEL 8:ssa
Nginx-palvelinlohko vastaa Apache-virtuaalipalvelinta, ja sen avulla voit isännöidä useampaa kuin yhtä verkkotunnusta tai verkkosivustoa palvelimellasi.
Tässä artikkelissa opit määrittämään Nginx-palvelinlohkot (virtuaaliset isännät) CentOS 8- ja RHEL 8 Linuxissa.
Edellytykset:
- Verkkotunnuksesi
A
-tietue. Yksinkertaisesti sanottunaA
-tietue viittaa DNS-merkintään, jossa toimialueen nimi on osoitettu palvelimen julkiseen IP-osoitteeseen, tässä tapauksessa Nginx-verkkopalvelimeen. Käytämme tässä oppaassa verkkotunnustacrazytechgeek.info
. - Nginx-palvelin tai LEMP-pino asennettuna CentOS 8- tai RHEL 8 -esiintymään.
- Kirjautunut käyttäjä, jolla on Sudo-oikeudet.
Aloitetaan!
Vaihe 1: Luo Nginx-asiakirjan juurihakemisto
Heti heti, sinun on luotava mukautettu verkkojuurihakemisto verkkotunnukselle, jota haluat isännöidä. Meidän tapauksessamme luomme hakemiston kuvan mukaisesti käyttämällä mkdir -p
-vaihtoehtoa luodaksesi kaikki tarvittavat ylähakemistot:
sudo mkdir -p /var/www/crazytechgeek.info/html
Määritä sen jälkeen hakemiston käyttöoikeudet $USER
-ympäristömuuttujan avulla. Kun teet niin, varmista, että olet kirjautunut sisään tavallisena käyttäjänä etkä pääkäyttäjänä.
sudo chown -R $USER:$USER /var/www/crazytechgeek.info/html
Määritä seuraavaksi oikeat hakemiston käyttöoikeudet rekursiivisesti kuvan osoittamalla tavalla:
sudo chmod -R 755 /var/www/crazytechgeek.info/html
Vaihe 2: Luo mallisivu verkkotunnukselle
Seuraavaksi aiomme luoda mukautettuun verkkojuurihakemistoon index.html
-tiedoston, jota verkkotunnus palvelee, kun pyyntö on tehty.
sudo vim /var/www/crazytechgeek.info/html/index.html
Liitä tiedoston sisään seuraava esimerkkisisältö.
<html>
<head>
<title>Welcome to your_domain!</title>
</head>
<body>
<h1>Awesome! Your Nginx server block is working!</h1>
</body>
</html>
Tallenna ja poistu asetustiedostosta.
Vaihe 3: Luo Nginx-palvelinlohko CentOS:ssä
Jotta Nginx-verkkopalvelin voisi palvella vaiheessa 2 luomamme index.html
-tiedoston sisältöä, meidän on luotava palvelinlohkotiedosto asianmukaisin ohjein. Siksi luomme uuden palvelinlohkon osoitteessa:
sudo vim /etc/nginx/conf.d/crazytechgeek.info.conf
Liitä seuraavaksi alla näkyvä kokoonpano.
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;
}
Kun olet valmis, tallenna muutokset ja poistu asetustiedostosta. Varmista, että kaikki Nginx-kokoonpanot ovat kunnossa ja virheettömiä, suorittamalla komento:
sudo nginx -t
Alla olevan tulosteen pitäisi olla vahvistus siitä, että olet hyvä!
Lopuksi käynnistä Nginx-verkkopalvelin uudelleen ja varmista, että se toimii odotetulla tavalla:
sudo systemctl restart nginx
sudo systemctl status nginx
Vaihe 4: Nginx-palvelinlohkon testaus CentOS:ssä
Olemme kaikki valmiit kokoonpanojen kanssa. Ainoa jäljellä oleva osa on vahvistaa, palveleeko palvelinlohkomme sisältöä verkkojuurihakemistossa, joka on määritetty aiemmin index.html
-tiedostossa.
Voit tehdä tämän avaamalla selaimesi ja siirtymällä palvelimesi verkkotunnukseen kuvan mukaisesti:
http://domain-name
Kuten havaittiin, palvelinlohko palvelee sisältöämme, mikä on selvä merkki siitä, että kaikki meni hyvin.
Vaihe 5: Ota HTTPS käyttöön verkkotunnuksessa, jota isännöi Nginx
Voit harkita verkkotunnuksesi salaamista käyttämällä Lets Encrypt SSL -ominaisuutta lisätäksesi suojakerroksen ja suojatun liikenteen verkkopalvelimelle ja sieltä pois.
sudo dnf install certbot python3-certbot-nginx
sudo certbot --nginx
Varmistaaksesi, että verkkotunnuksesi on määritetty oikein HTTPS-protokollalla, käy selaimessasi osoitteessa https://yourwebsite.com/
ja etsi lukkokuvake URL-palkista.
Johtopäätös
Olemme onnistuneesti määrittäneet Nginx-palvelinlohkon CentOS 8- ja RHEL 8 -käyttöjärjestelmille. Voit toistaa saman useille toimialueille samalla menettelyllä.