GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nastavit bloky serveru Nginx na Ubuntu 20.04

Blok serveru je direktiva Nginx, která definuje nastavení pro konkrétní doménu, což vám umožňuje provozovat více než jednu webovou stránku na jednom serveru. Pro každý web můžete nastavit kořen dokumentu webu (adresář, který obsahuje soubory webu), vytvořit samostatnou bezpečnostní politiku, používat různé certifikáty SSL a mnoho dalšího.

Tento článek popisuje, jak nastavit bloky serveru Nginx na Ubuntu 20.04.

Předpoklady #

Než budete pokračovat, ujistěte se, že jste splnili následující požadavky:

  • Název domény odkazující na IP vašeho veřejného serveru.
  • Nginx nainstalovaný ve vašem systému Ubuntu.
  • Jste přihlášeni jako uživatel root nebo uživatel s právy sudo.

V některých článcích je termín „bloky serveru“ označován jako „virtuální hostitel“. Virtuální hostitel je termín Apache.

Vytvoření adresářové struktury #

Kořen dokumentu je adresář, kde jsou uloženy soubory webových stránek pro název domény a obsluhovány v reakci na požadavky. Kořen dokumentu můžete nastavit na libovolné umístění. V tomto příkladu použijeme následující adresářovou strukturu:

/var/www/
├── domain1.com
│   └── public_html
├── domain2.com
│   └── public_html

Každá doména hostovaná na serveru bude mít kořen dokumentu nastaven na /var/www/<domain_name>/public_html .

Začněte vytvořením kořenového adresáře pro doménu:

sudo mkdir -p /var/www/domain1.com/public_html

Vytvoříme také index.html soubor v kořenovém adresáři dokumentu domény, který se zobrazí při návštěvě domény ve vašem prohlížeči:

/var/www/example.com/public_html/index.html
<!DOCTYPE html>
<html lang="en" dir="ltr">
  <head>
    <meta charset="utf-8">
    <title>Welcome to example.com</title>
  </head>
  <body>
    <h1>Success! example.com home page!</h1>
  </body>
</html>

Vzhledem k tomu, že výše uvedené příkazy jsou prováděny jako uživatel sudo, nově vytvořené soubory a adresáře jsou vlastněny uživatelem root. Chcete-li se vyhnout problémům s oprávněními, změňte vlastnictví kořenového adresáře dokumentu domény a všech souborů v adresáři na uživatele Nginx (www-data ):

sudo chown -R www-data: /var/www/domain1.com

Vytvoření bloku serveru #

Na systémech Ubuntu jsou konfigurační soubory bloků serveru Nginx umístěny v /etc/nginx/sites-available adresář. Lze je povolit vytvořením symbolických odkazů na /etc/nginx/sites-enabled adresář, který Nginx načetl během spouštění.

Otevřete textový editor a vytvořte následující soubor bloku serveru:

/etc/nginx/sites-available/example.com
server {
    listen 80;

    server_name example.com www.example.com;

    root /var/www/example.com/public_html;

    index index.html;

    access_log /var/log/nginx/example.com.access.log;
    error_log /var/log/nginx/example.com.error.log;
}
  • server_name :Domény, které by měly odpovídat této konfiguraci blokování serveru.
  • root :Adresář, ze kterého bude Nginx obsluhovat soubory domény.
  • access_log , error_log :Určuje umístění souborů protokolu.

Konfigurační soubor lze pojmenovat jakkoli chcete, ale obvykle je nejlepší použít název domény.

Chcete-li povolit nový soubor blokování serveru, vytvořte ze souboru symbolický odkaz na sites-enabled adresář, který Nginx načetl při spuštění:

sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/

Otestujte konfiguraci Nginx pro správnou syntaxi:

sudo nginx -t

Pokud nejsou žádné chyby, výstup bude vypadat takto:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Restartujte službu Nginx, aby se změny projevily:

sudo systemctl restart nginx

Nakonec, abyste ověřili, že blok serveru funguje podle očekávání, otevřete http://example.com ve vašem zvoleném prohlížeči a uvidíte něco takového:


Ubuntu
  1. Jak nastavit Nginx jako reverzní proxy na Ubuntu 20.04

  2. Jak nastavit WireGuard na Ubuntu 22.04

  3. Jak nastavit TeamSpeak Server na Ubuntu 16.04

  1. Jak nastavit bloky serveru Nginx na Ubuntu 18.04

  2. Jak nastavit bloky serveru Nginx na Ubuntu a CentOS

  3. Jak nainstalovat Nginx na Ubuntu 18.04

  1. Jak nastavit server OpenVPN na Ubuntu 18.04

  2. Jak nainstalovat Nginx na Ubuntu 20.04

  3. Jak nastavit bloky serveru Nginx na CentOS 7