Jak nastavit bloky serveru Nginx (virtuální hostitelé) na Ubuntu 20.04
Někdy může být nutné hostovat více než jednu doménu nebo web na vašem webovém serveru Nginx. Aby k tomu došlo, je třeba nakonfigurovat Blok serveru (Virtuální hostitelé), aby zapouzdřil veškerou konfiguraci vaší domény. Bloky serveru Nginx jsou synonymem pro soubory virtuálního hostitele Apache a slouží stejnému účelu.
Toto téma ukazuje, jak nastavit blok serveru Nginx na Ubuntu 20.04.
Předpoklady:
- Záznam
A
definovaný u vašeho poskytovatele hostingu názvu domény. ZáznamA
je záznam DNS, který odkazuje název domény na IP adresu veřejného serveru. V této příručce budeme pro ilustraci používat název doménycrazytechgeek.info
. - Server Nginx nebo LEMP Stack nainstalovaný v instanci Ubuntu 20.04 LTS.
- Přihlašovací uživatel s právy Sudo.
Když jsou splněny všechny požadavky, pojďme prozkoumat, jak můžete nastavit blok serveru Nginx v Ubuntu.
Krok 1: Vytvořte kořenový adresář dokumentu Nginx
Pro začátek si pro naši doménu vytvoříme samostatný adresář, který bude obsahovat všechna nastavení související s doménou.
sudo mkdir -p /var/www/crazytechgeek.info/html
Dále přiřaďte vlastnictví adresáře pomocí proměnné prostředí $USER
. Tím přiřadíte vlastnictví adresáře aktuálně přihlášenému uživateli. Ujistěte se, že jste přihlášeni pomocí účtu běžného uživatele a ne jako root.
sudo chown -R $USER:$USER /var/www/crazytechgeek.info/html
Dále přidělte příslušná oprávnění k adresáři a udělte přihlášenému uživateli všechna práva (čtení, zápis a spouštění) a skupině a dalším uživatelům pouze oprávnění ke čtení a spouštění.
sudo chmod -R 755 /var/www/crazytechgeek.info
Se správně nakonfigurovanými oprávněními k adresáři a vlastnictvím musíme vytvořit ukázkovou webovou stránku pro doménu.
Krok 2: Vytvořte vzorovou stránku pro doménu
V tomto kroku vytvoříme soubor index.html
pro testovací účely. Tento soubor bude sloužit obsahu, který se zobrazí ve webovém prohlížeči, když je v prohlížeči zavolána doména.
sudo vim /var/www/crazytechgeek.info/html/index.html
Vložte následující obsah HTML.
<html>
<head>
<title>Welcome to your_domain!</title>
</head>
<body>
<h1>Bravo! Your server block is working as expected!</h1>
</body>
</html>
Uložte a ukončete konfigurační soubor.
Krok 3: Vytvořte blok serveru Nginx v Ubuntu
Bloky serveru Nginx jsou umístěny v adresáři /etc/nginx/sites-available
. Výchozí blok serveru Nginx je /etc/nginx/sites-available/default
, který poskytuje výchozí soubor HTML na adrese /var/www/html/index.nginx-debian.html .
V našem případě musíme vytvořit blok serveru, který bude obsluhovat obsah v souboru index.html
, který jsme vytvořili dříve.
Vytvořte tedy zobrazený soubor bloku serveru.
sudo vim /etc/nginx/sites-available/crazytechgeek.info
Vložte obsah níže:
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;
}
Uložte a ukončete soubor.
Krok 4: Povolte blokování serveru Nginx v Ubuntu
Chcete-li povolit blok serveru Nginx, musíte jej symbolicky propojit s adresářem /etc/nginx/sites-enabled/
, jak je znázorněno.
sudo ln -s /etc/nginx/sites-available/crazytechgeek.info /etc/nginx/sites-enabled/
V tuto chvíli jsme téměř hotovi. Je však rozumné ověřit, zda jsou všechny konfigurace v pořádku. Chcete-li to provést, spusťte příkaz:
sudo nginx -t
Pokud jste postupovali správně podle našich kroků, měl by se zobrazit výstup:
Nakonec restartujte Nginx, aby se změny provedené v konfiguračních souborech projevily.
sudo systemctl restart Nginx
Poté potvrďte, zda Nginx běží spuštěním zobrazeného příkazu:
sudo systemctl status Nginx
Krok 5: Testování bloku serveru Nginx v Ubuntu
Chcete-li ověřit, zda blok serveru funguje podle očekávání a poskytuje obsah v adresáři /var/www/crazytechgeek.info
, otevřete webový prohlížeč a vyhledejte název domény svého serveru:
http://domain-name
Měli byste získat obsah obsažený v souboru HTML v bloku serveru, jak je znázorněno.
Závěr
V této příručce jsme vám ukázali, jak nastavit blok serveru Nginx pomocí jedné domény na Ubuntu Linux. Můžete opakovat stejné kroky pro různé domény a stále dosáhnout stejných výsledků. Doufáme, že průvodce byl srozumitelný.