Přejít na hlavní obsah

Jak nastavit Nginx na Linuxu: podrobný průvodce pro začátečníky

  • Alice Kolářová
  • Triky

Nginx - je to oblíbený webový server a reverzní proxy server, který může také plnit roli mezipaměti HTTP, vyrovnávače zatížení a dalších úkolů. Vyznačuje se vysokým výkonem, spolehlivostí a flexibilitou přizpůsobení a je preferovanou volbou pro mnoho webových vývojářů a správců systému.

V tomto článku se podíváme na podrobného průvodce instalací a konfigurací Nginx na operačním systému Linux. Jako příklad použijeme distribuci Ubuntu, ale pokyny platí i pro jiné distribuce Linuxu.

Poznámka: Před zahájením instalace Nginx se ujistěte, že máte na svém systému Linux nainstalovaná administrátorská práva.

Prvním krokem je instalace Nginx. Chcete-li to provést, otevřete terminál a spusťte následující příkaz:

Instalace Nginx na Linux

Nejprve musíte nainstalovat Nginx na váš linuxový systém. Chcete-li nainstalovat Nginx, postupujte podle těchto kroků:

  1. Otevřete terminál na vašem Linuxovém systému.
  2. Aktualizujte balíčky svého systému pomocí příkazu sudo apt update . V případě potřeby zadejte své heslo.
  3. Nainstalujte Nginx pomocí příkazu sudo apt install nginx . V případě potřeby potvrďte instalaci.

Po dokončení instalace bude Nginx připraven k použití na vašem Linuxovém systému. Můžete zkontrolovat, zda je nginx úspěšně nainstalován otevřením webového prohlížeče a zadáním do adresního řádku http://localhost .. Pokud je vše nastaveno správně, uvidíte stránku pozdravu nginx.

Pokud používáte jinou distribuci Linuxu, jako je CentOS nebo Fedora, instalace Nginx se může mírně lišit. Ujistěte se, že dodržujete pokyny odpovídající vašemu systému.

Nyní, když máte nginx nainstalovaný na Linuxu, můžete jej začít konfigurovat a používat.

Konfigurace Nginx: základní nastavení serveru

Zde jsou některá z hlavních nastavení serveru Nginx:

1. Port a adresa serveru: Ve výchozím nastavení nginx poslouchá port 80 a adresu localhost. Pokud chcete změnit port nebo adresu, můžete upravit následující řádek v konfiguračním souboru:

2. Kořenový adresář: Kořenový adresář označuje adresář, kde jsou uloženy soubory pro web. Kořenový adresář můžete změnit úpravou následujícího řádku:

3. Indexový soubor: Indexový soubor je soubor, který se ve výchozím nastavení zobrazí při procházení adresáře bez uvedení názvu souboru. Indexový soubor můžete změnit změnou následujícího řádku:

4. Logování: Nginx zaznamenává různé události do logických souborů. Soubory protokolu zahrnují přístup na web, chyby serveru a další informace. Cestu a formát logických souborů můžete nakonfigurovat takto:

5. Proxy: Nginx lze také použít jako proxy server. Pokud chcete nakonfigurovat proxy pro Nginx, můžete přidat následující řádky:

To jsou jen některé z hlavních nastavení serveru Nginx. V případě potřeby můžete změnit další nastavení a nakonfigurovat server tak, aby vyhovoval vašim potřebám. Po provedení změn v konfiguračním souboru je nutné restartovat server Nginx, aby bylo možné použít nastavení.

Vytváření virtuálních hostitelů v nginx

Prvním krokem je vytvoření konfiguračního souboru pro virtuálního hostitele. Tyto soubory jsou obvykle umístěny v adresáři / etc / nginx / conf.d/. Vytvořte nový soubor s příponou .například mywebsite.conf.

Otevřete vytvořený soubor v textovém editoru a přidejte následující konfiguraci:

server listen 80;server_name mywebsite.com www.mywebsite.com;location / root /var/www/mywebsite;index index.html index.htm;>>

V tomto příkladu vytváříme virtuální hostitel pro doménu mywebsite.com a jeho subdoména www.mywebsite.com. konfigurace určuje nginx poslouchat na portu 80 a zpracovávat požadavky pro zadané domény.

Klíčová možnost server_name určuje seznam domén, které bude tento virtuální hostitel zpracovávat.

V sekci location zadáme kořenový adresář, kde jsou soubory webových stránek, a zadáme seznam hlavních souborů webové stránky. V tomto případě musí být soubory webových stránek umístěny v adresáři / var / www / mywebsite a hlavním zobrazovacím souborem bude index.html nebo index.htm.

Po uložení konfiguračního souboru je nutné restartovat Nginx, aby se změny projevily. Proveďte příkaz:

sudo systemctl restart nginx

Nyní je virtuální hostitel nakonfigurován a připraven k použití. Ujistěte se, že vaše doména označuje IP adresu vašeho serveru, aby se požadavky na tuto doménu dostaly na váš server.

Můžete vytvořit více virtuálních hostitelů pouhým opakováním procesu vytváření konfiguračního souboru a zadáním jiného kořenového adresáře a seznamu domén.

Tímto způsobem jste se naučili vytvářet virtuální hostitele v Nginx. Je to výkonný nástroj, který umožňuje spravovat více webových stránek na jednom serveru a zpracovávat je nezávisle na sobě.

Konfigurace certifikátů SSL pro bezpečné připojení

Pro konfiguraci SSL certifikátů budete potřebovat:

  1. Vygenerovat certifikát SSL nebo zakoupit certifikát SSL od důvěryhodného certifikačního centra (CA).
  2. Nainstalujte certifikát na server.
  3. Nakonfigurujte Nginx pro použití certifikátu SSL.

1. Generování certifikátu SSL s vlastním podpisem

Vlastní SSL certifikát lze použít k testování nebo internímu použití. Chcete-li takový certifikát vygenerovat, spusťte následující příkaz:

  • openssl req -x509 -newkey rsa:2048 -nodes -sha256 -keyout server.key -out server.crt -subj "/CN=yourdomain.com"

Tento příkaz vygeneruje soukromý klíč (server.key) a samopsaný certifikát (server.crt).

2. Instalace certifikátu

Certifikáty lze nastavit v různých adresářích v závislosti na vašem operačním systému a konfiguraci Nginx. Obvykle se nacházejí v adresáři / etc/ nginx / ssl/.

Zkopírujte konfigurovaný certifikát SSL (server.crt) a soukromý klíč (server.key) do adresáře s certifikáty:

  • sudo cp server.crt /etc/nginx/ssl/
  • sudo cp server.key /etc/nginx/ssl/

3. Nastavení Nginx

Upravte konfigurační soubor nginx (/etc/nginx / nginx.conf nebo / etc / nginx / conf.d/default.conf) a přidejte další konfigurační jednotku SSL:

server >

Zde yourdomain.com -je to název domény vašeho serveru. Ujistěte se, že název serveru se shoduje s hodnotou uvedenou v certifikátu podepsaném samostatně nebo certifikátu získaném z certifikačního centra.

Můžete také změnit použité protokoly a šifry a přidat další nastavení SSL, jak chcete.

Po provedení změn restartujte Nginx pro použití nastavení:

  • sudo systemctl restart nginx

Nyní je váš Nginx server nakonfigurován tak, aby používal certifikát SSL, který poskytuje zabezpečené připojení k zákazníkům.

Nastavení přesměrování (Redirect) na Nginx

Zde je několik příkladů nastavení přesměrování v Nginx:

    Přesměrování na jinou doménu:

server 
server >
server >>

Přesměrování na Nginx můžete nakonfigurovat pomocí směrnice rewrite a různé podmínky pro splnění vašich požadavků.

Správa přístupu k Nginx: konfigurace autentizace a autorizace

Pro zabezpečení a ochranu webových aplikací spuštěných na Nginx je důležité nakonfigurovat autentizaci a autorizaci. Autentizace umožňuje identifikovat uživatele, kontrolovat přístup a zabránit neoprávněnému přístupu. Autorizace určuje přístupová práva uživatele a určuje, jaké prostředky může použít.

Existují různé metody ověřování a autorizace v Nginx. Zde jsou uvedeny dvě nejpoužívanější metody: základní autentizace a použití směrnice try_files.

Základní autentizace

Základní autentizace poskytuje snadný způsob, jak chránit přístup k webu pomocí přihlašovacího jména a hesla. Chcete-li nakonfigurovat základní autentizaci v nginx, musíte postupovat podle následujících kroků:

    Vytvořte soubor obsahující přihlašovací údaje a zašifrovaná uživatelská hesla:

/etc/nginx/.htpasswd
location / 
sudo service nginx restart

Nyní při pokusu o přístup na web obdrží uživatel okno s žádostí o přihlášení a heslo.

Použití směrnice try_files

Směrnice try_files umožňuje upravit přístupová práva k různým zdrojům v závislosti na podmínkách. Pro použití této směrnice v Nginx je nutné provést následující kroky:

    Přidejte směrnici try_files do bloku umístění:

location /private 
location /private 
sudo service nginx restart

Nyní, když se pokusíte o přístup k prostředku /private, uživatel obdrží okno s žádostí o přihlášení a heslo.

Je důležité si uvědomit, že nastavení autentizace a autorizace se může lišit v závislosti na vašich požadavcích a konkrétních nastaveních Nginx.

Organizace vyrovnávání zatížení pomocí Nginx

Chcete-li nakonfigurovat vyvažování zatížení pomocí nginx, musíte určit skupinu serverů, na které bude zatížení distribuováno, a poté nakonfigurovat příslušné konfigurační bloky v souboru nginx.conf. V konfiguračním bloku musíte zadat adresy a porty serverů a také zvolit použitou metodu vyrovnávání zatížení.

Příklad nastavení vyrovnávání zatížení pomocí metody round-robin:

http server >>

Příklad nastavení vyrovnávání zatížení pomocí metody least-connected:

http server >>

Příklad nastavení vyrovnávání zatížení pomocí metody ip_hash:

http server >>

To jsou jen některé z možností Nginx pro vyvažování zátěže. Můžete nakonfigurovat i další nastavení, jako je hmotnost serveru nebo nastavení časového limitu. Díky flexibilitě a snadnému nastavení je Nginx skvělou volbou pro organizaci vyrovnávání zátěže ve vašich projektech.