GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nastavit bloky serveru Nginx v Ubuntu 18.04 LTS

V naší předchozí příručce jsme diskutovali o tom, jak konfigurovat virtuální hostitele Apache v Ubuntu 18.04 LTS . Dnes se v této příručce naučíme nastavit bloky serveru Nginx v Ubuntu 18.04. Bloky serveru jsou podobné virtuálním hostitelům v Apache, které vám pomáhají hostovat více webových stránek/domén na jednom serveru. IP adresa mé testovací krabice je 192.168.225.24 a název hostitele je ubuntuserver .

Nastavení blokování serveru Nginx v Ubuntu 18.04 LTS

Ujistěte se, že jste aktualizovali svůj systém Ubuntu na nejnovější verzi.

$ sudo apt-get update

1. Nainstalujte webový server Nginx 

Chcete-li nainstalovat webový server Nginx na Ubuntu, spusťte:

$ sudo apt-get install nginx

Jakmile Nginx nainstalujete, otestujte, zda funguje nebo ne, procházením testovací stránky nginx v prohlížeči.

Otevřete webový prohlížeč a nasměrujte jej na http://IP_Address nebo http://localhost . Měli byste vidět stránku jako níže.

Dobrý! Webový server Nginx je funkční!!

2. Vytvořte webový adresář pro každého hostitele

Vytvořím dva bloky serveru, konkrétně ostechnix1.lan a ostechnix2.lan .

Vytvořme adresář pro první blok serveru ostechnix1.lan. Tento adresář je nutný pro ukládání dat bloků našeho serveru.

Chcete-li tak učinit, zadejte:

$ sudo mkdir -p /var/www/html/ostechnix1.lan/public_html

Podobně vytvořte adresář pro druhý blok serveru ostechnix2.lan, jak je znázorněno níže.

$ sudo mkdir -p /var/www/html/ostechnix2.lan/public_html

Výše uvedené dva adresáře jsou ve vlastnictví uživatele root. Musíme změnit vlastnictví na běžného uživatele.

Chcete-li to provést, spusťte:

$ sudo chown -R $USER:$USER /var/www/html/ostechnix1.lan/public_html
$ sudo chown -R $USER:$USER /var/www/html/ostechnix2.lan/public_html

Zde, $USER odkazuje na aktuálně přihlášeného uživatele.

Dále nastavte oprávnění ke čtení do kořenového adresáře Nginx, tj. /var/www/html/ pomocí příkazu:

$ sudo chmod -R 755 /var/www/html/

Děláme to proto, že jsme již vytvořili samostatný adresář pro každý blok serveru pro ukládání jejich dat. Proto jsme vytvořili kořenový adresář Nginx jako pouze pro čtení pro všechny uživatele kromě uživatele root.

Vytvořili jsme požadované adresáře pro ukládání dat každého bloku serveru, nastavte správná oprávnění. Nyní je čas vytvořit několik vzorových stránek, které budou obsluhovány z každého bloku serveru.

3. Vytvořte ukázkové webové stránky pro každého hostitele

Vytvořme vzorovou stránku pro web otechnix1.lan. Chcete-li to provést, spusťte:

$ sudo vi /var/www/html/ostechnix1.lan/public_html/index.html

Přidejte do něj následující řádky:

<html>
 <head>
 <title>www.ostechnix.lan</title>
 </head>
 <body>
 <h1>Hello, This is a test page for ostechnix1.lan website</h1>
 </body>
</html>

Uložte a zavřete soubor.

Podobně vytvořte vzorovou stránku pro web ostechnix2.lan:

$ sudo vi /var/www/html/ostechnix2.lan/public_html/index.html

Přidejte do něj následující řádky:

<html>
 <head>
 <title>www.ostechnix.lan</title>
 </head>
 <body>
 <h1>Hello, This is a test page for ostechnix2.lan website</h1>
 </body>
</html>

Uložte a zavřete soubor.

4. Vytvořte konfigurační soubor pro každého hostitele

Dále musíme vytvořit konfigurační soubory pro každý blok serveru. Nejprve to udělejme pro web otechnix1.lan.

Zkopírujte obsah výchozího konfiguračního souboru bloku serveru do nových souborů bloků serveru, jak je uvedeno níže.

$ sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/ostechnix1.lan.conf
$ sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/ostechnix2.lan.conf

Dále upravte ostechnix.lan1.conf soubor:

$ sudo vi /etc/nginx/sites-available/ostechnix1.lan.conf

Proveďte potřebné změny v název_serveru a root direktivy, aby odpovídaly prvnímu názvu domény. Všechny změny jsou níže zobrazeny tučným písmem.

# Default server configuration
#
server {
listen 80 default_server;
listen [::]:80 default_server;

# SSL configuration
#
# listen 443 ssl default_server;
# listen [::]:443 ssl default_server;
#
# Note: You should disable gzip for SSL traffic.
# See: https://bugs.debian.org/773332
#
# Read up on ssl_ciphers to ensure a secure configuration.
# See: https://bugs.debian.org/765782
#
# Self signed certs generated by the ssl-cert package
# Don't use them in a production server!
#
# include snippets/snakeoil.conf;

root /var/www/html/ostechnix1.lan/public_html;

# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html;

server_name ostechnix1.lan www.ostechnix1.lan;

location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
}

Uložte a zavřete soubor.

Dále upravte ostechnix2.lan.conf soubor:

$ sudo vi /etc/nginx/sites-available/ostechnix2.lan.conf

Proveďte potřebné změny v název_serveru a root direktivy, které se mají promítnout do druhého názvu domény. Všechny změny jsou zobrazeny tučně.

# Default server configuration
#
server {
listen 80;
listen [::]:80;

# SSL configuration
#
# listen 443 ssl default_server;
# listen [::]:443 ssl default_server;
#
# Note: You should disable gzip for SSL traffic.
# See: https://bugs.debian.org/773332
#
# Read up on ssl_ciphers to ensure a secure configuration.
# See: https://bugs.debian.org/765782
#
# Self signed certs generated by the ssl-cert package
# Don't use them in a production server!
#
# include snippets/snakeoil.conf;

root /var/www/html/ostechnix2.lan/public_html;

# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html;

server_name ostechnix2.lan www.ostechnix2.lan;

location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
}

Jak jste si mohli všimnout ve výše uvedené konfiguraci, provedl jsem ještě jednu změnu. Odebral jsem výchozí_server řádku v poslechu 80; a poslouchejte [::]:80; direktivy v druhém souboru serveru block(ostechnix2.lan). Protože výchozí_server jsme již použili řádek v prvním bloku serveru, proto jsme jej odstranili z druhého souboru, abychom předešli konfliktu.

Uložte/zavřete soubor.

5. Povolit bloky serveru Nginx

Po provedení nezbytných změn deaktivujte výchozí konfigurační soubor bloků serveru a povolte všechny nově vytvořené konfigurační soubory bloků serveru, jak je uvedeno níže.

$ sudo rm /etc/nginx/sites-enabled/default
$ sudo ln -s /etc/nginx/sites-available/ostechnix1.lan.conf /etc/nginx/sites-enabled/
$ sudo ln -s /etc/nginx/sites-available/ostechnix2.lan.conf /etc/nginx/sites-enabled/

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

$ sudo systemctl restart nginx

A je to. Úspěšně jsme nakonfigurovali bloky serveru v Nginx. Pojďme do toho a zkontrolujeme, zda fungují nebo ne.

6. Otestujte bloky serveru Nginx

Otevřete soubor /etc/hosts v libovolném editoru:

$ sudo vi /etc/hosts

Přidejte všechny své virtuální webové stránky/domény jednu po druhé, jak je uvedeno níže.

[...]
192.168.225.24   ostechnix1.lan
192.168.225.24   ostechnix2.lan
[...]

Upozorňujeme, že pokud chcete přistupovat k blokům serveru z libovolného vzdáleného systému, musíte výše uvedené řádky přidat do souboru /etc/hosts každého vzdáleného systému. Uložte a zavřete soubor.

Otevřete webový prohlížeč a nasměrujte jej na http://ostechnix1.lan nebo http://ostechnix2.lan .

testovací stránka otechnix1.lan:

testovací stránka otechnix2.lan:

Gratulujeme! Nyní můžete mít přístup ke všem svým webům/doménám. Od této chvíle můžete nahrávat data a poskytovat je z různých webových stránek.


Ubuntu
  1. Jak nastavit iSCSI Storage Server na Ubuntu 18.04 LTS

  2. Jak nastavit Rsyslog Server na Ubuntu 18.04 LTS

  3. Jak nastavit iSCSI Storage Server na Ubuntu 20.04 LTS

  1. Jak nastavit bloky serveru Nginx na Ubuntu 18.04

  2. Jak nainstalovat Nginx na Ubuntu 20.04

  3. Jak nastavit bloky serveru Nginx na Ubuntu 20.04

  1. Jak nastavit server a klienta Kerberos na Ubuntu 18.04 LTS

  2. Jak nastavit IRedMail Server na Ubuntu 18.04 LTS

  3. Jak nastavit VPN server pomocí Pritunl na Ubuntu 18.04 LTS