Nginx je open source, vysoce výkonný HTTP a reverzní proxy server, který pohání některé z největších webů na internetu.
Nginx lze použít jako samostatný webový server a jako reverzní proxy pro Apache a další webové servery.
Ve srovnání s Apache dokáže Nginx zpracovat mnohem velký počet souběžných připojení a má menší nároky na paměť na připojení.
Tento tutoriál nastíní kroky k instalaci a správě Nginx na počítači Debian.
Předpoklady #
Než začnete s výukovým programem, ujistěte se, že jste přihlášeni jako uživatel s právy sudo.
Instalovat Nginx #
Instalace je docela jednoduchá. Při instalaci Nginx na váš systém Debian postupujte podle následujících kroků:
-
Aktualizujte index balíčků:
sudo apt update
-
Nainstalujte balíček Nginx:
sudo apt install nginx
-
Služba Nginx se automaticky spustí po dokončení procesu instalace. Můžete to ověřit spuštěním následujícího
curl
příkaz:curl -I 127.0.0.1
HTTP/1.1 200 OK Server: nginx/1.10.3 Date: Mon, 27 Aug 2018 22:29:02 GMT Content-Type: text/html Content-Length: 612 Last-Modified: Mon, 27 Aug 2018 22:27:54 GMT Connection: keep-alive ETag: "5b847aea-264" Accept-Ranges: bytes
Upravte bránu firewall #
Pokud používáte iptables k filtrování připojení k vašemu systému, budete muset otevřít HTTP (80
) a HTTPS (443
) porty.
Otevřete potřebné porty zadáním následujícího příkazu:
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
Spravujte službu Nginx pomocí systemctl #
Můžete použít systemctl
příkaz pro správu služby Nginx, stejně jako jakákoli jiná systémová jednotka.
Chcete-li zastavit službu Nginx, spusťte:
sudo systemctl stop nginx
Chcete-li jej znovu spustit, zadejte:
sudo systemctl start nginx
Restartování služby Nginx:
sudo systemctl restart nginx
Po provedení některých změn konfigurace znovu načtěte službu Nginx:
sudo systemctl reload nginx
Zakažte spuštění služby Nginx při spuštění:
sudo systemctl disable nginx
A znovu jej povolit:
sudo systemctl enable nginx
Struktura a doporučené postupy konfiguračního souboru Nginx #
- Konfigurační soubory Nginx jsou uloženy v
/etc/nginx
adresář. - Hlavní konfigurační soubor Nginx je
/etc/nginx/nginx.conf
. - Konfigurační soubory bloku serveru (vhost) jsou uloženy v
/etc/nginx/sites-available
adresář. Konfigurační soubory nalezené v tomto adresáři nepoužívá Nginx, pokud nejsou propojeny s/etc/nginx/sites-enabled
adresář. - Aktivace serverových bloků se provádí vytvořením symbolického odkazu (ukazatele) ze stránek konfiguračního souboru v
sites-available
do adresářesites-enabled
adresář. - Chcete-li napsat lépe udržovatelný kód, je dobré řídit se standardní konvencí pojmenování. Například pokud je název vaší domény
mydomain.com
pak by se konfigurační soubor měl jmenovat/etc/nginx/sites-available/mydomain.com.conf
. /etc/nginx/snippets
adresář obsahuje konfigurační fragmenty, které lze zahrnout do souborů bloků serveru. Pokud používáte opakovatelné konfigurační segmenty, můžete tyto segmenty předělat na úryvky a zahrnout soubor úryvků do bloků serveru.- Soubory protokolu Nginx (
access.log
aerror.log
) jsou umístěny v/var/log/nginx/
adresář. Doporučuje se mít jinýaccess
aerror
soubory protokolu pro každý blok serveru. - Kořenový adresář dokumentů domény můžete nastavit do libovolného umístění. Mezi nejčastější umístění pro webroot patří:
/home/<user_name>/<site_name>
/var/www/<site_name>
/var/www/html/<site_name>
/opt/<site_name>