Úvod
Nginx je výkonná serverová aplikace, která směruje síťový provoz. Často se používá jako reverzní proxy server, ale lze jej nakonfigurovat také jako běžný webový server.
Jednou z nejběžnějších operací, se kterými se setkáte, je spouštění, zastavování a restartování webového serveru Nginx.
V tomto kurzu se dozvíte, jak spustit, zastavit a restartovat službu Nginx.
Předpoklady
- Systém s nainstalovaným a nakonfigurovaným Nginx
- Přístup do okna terminálu nebo příkazového řádku
- Uživatelský účet s sudo nebo root privilegia
- Stávající připojení SSH ke vzdálenému systému (pokud pracujete vzdáleně)
Spusťte, zastavte a restartujte Nginx pomocí systemctl
Jak zobrazit stav vašeho serveru Nginx
Nginx běží jako služba na vašem serveru. To znamená, že by měl být aktivně spuštěn na pozadí, i když na obrazovce nic nevidíte. Stav služby Nginx můžete zobrazit zadáním následujícího příkazu v okně terminálu:
sudo systemctl status nginx
Systém se přepne do stavového režimu a zobrazí spoustu informací o službě Nginx.
- Pokud je služba spuštěna (aktivní), uvidíte zelené aktivní (spuštěno) stav ve třetím řádku.
- Pokud Nginx není spuštěn, zobrazí se jako neaktivní ve standardní bílé.
- Pokud se něco pokazilo a Nginx se nepodařilo načíst, zobrazí se červený stav selhalo , s některými informacemi o selhání.
Stiskněte q
znovu aktivovat bash prompt.
SystemD je výchozí správce služeb v moderních verzích distribucí Linuxu (Ubuntu 20.04/18.04/16.04, CentOS 7/7 a Debian 9/10) . Správce SystemD funguje prostřednictvím systemctl
příkaz.
systemctl
příkaz je základní příkaz Linuxu. To znamená, že jej lze použít pro jakoukoli službu Linuxu.
Zastavit a spustit Nginx
systemctl
lze použít ke spuštění a zastavení služby Nginx.
Chcete-li zastavit Nginx, spusťte následující příkaz:
sudo systemctl stop nginx
Chcete-li spustit Nginx, spusťte systemctl
pomocí příkazu start
možnost:
sudo systemctl start nginx
Jak restartovat Nginx
Slušně restartujte Nginx
Pokud obnovujete Nginx po změně konfigurace, je nejlepší znovu načíst službu. To vypne staré procesy a restartuje nové s novou konfigurací.
Použijte systemctl
Příkaz Linux pro opětovné načtení služby Nginx. Spusťte následující příkaz:
sudo systemctl reload nginx
Vynutit restart Nginx
Pro velké změny konfigurace můžete vynutit úplný restart Nginx. Tím se vynuceně zavře celá služba a dílčí procesy a restartuje se celý balíček.
Zadejte následující příkaz:
sudo systemctl restart nginx
Restart vs. Reload Nginx
reload
příkaz udržuje server Nginx spuštěný, když znovu načítá aktualizované konfigurační soubory. Pokud Nginx zaznamená chybu syntaxe v některém z konfiguračních souborů, opětovné načtení se přeruší a server nadále běží na základě starých konfiguračních souborů. Opětovné načtení je bezpečnější než restartování Nginx.
restart
příkaz vypne server včetně všech souvisejících služeb a znovu jej zapne. Restartujte Nginx pouze při provádění významných aktualizací konfigurace, jako je změna portů nebo rozhraní. Tento příkaz vynutí vypnutí všech pracovních procesů.
Nakonfigurujte Nginx pro spuštění při spuštění
Použijte enable
pomocí systemctl
příkaz pro povolení Nginx:
sudo systemctl enable nginx
Použijte disable
pomocí systemctl
příkaz k deaktivaci Nginx:
sudo systemctl disable nginx
Spusťte, zastavte a znovu načtěte Nginx pomocí příkazu Nginx
Nginx má sadu vestavěných nástrojů pro správu služby, ke kterým lze přistupovat pomocí příkazu Nginx.
Spuštění Nginx
Chcete-li spustit Nginx a související procesy, zadejte následující:
sudo /etc/init.d/nginx start
Při úspěšném spuštění se na výstupu terminálu zobrazí toto:
Output
[ ok ] Starting nginx (via systemctl): nginx.service.
Restartování Nginx
Chcete-li vynutit uzavření a restartování Nginx a souvisejících procesů:
sudo /etc/init.d/nginx restart
Jako alternativu použijte nginx -s
příkaz:
sudo nginx -s restart
Zastavení Nginx
Chcete-li zakázat nebo zastavit službu Nginx, zadejte následující:
sudo /etc/init.d/nginx stop
Případně použijte:
sudo nginx -s stop
Nginx Znovu načíst
Chcete-li elegantně zastavit a restartovat Nginx a související procesy, použijte příkaz:
sudo /etc/init.d/nginx reload
Alternativně můžete použít nginx -s
příkaz k předání pokynů přímo Nginx:
sudo nginx -s reload
Ukončit Nginx
Vynutit uzavření služby Nginx pomocí quit
instrukce s nginx -s
příkaz:
sudo nginx -s quit