Procédure
Chcete-li na vašem VPS s ISPConfig spustit aplikaci Node.js, musíte nakonfigurovat Apache jako reverzní proxy na místní port vašeho skriptu. Node.js je serverové běhové prostředí JavaScriptu, které umožňuje vytvářet rychlé a škálovatelné webové aplikace. Spojením správce procesů, jako je PM2, a direktiv ISPConfig zajistíte trvalý provoz služby a zabezpečení pomocí certifikátu SSL.
Přihlaste se do zákaznické zóny, přejděte do sekce Servery a poté klikněte na Spravovat u vašeho VPS stroje s ISPConfig.
V ovládacím panelu vašeho serveru klikněte na Admin panel, abyste se připojili do konzole ISPConfig.
Pokud se rozhodnete instalovat Node.js globálně pro celý systém místo pro lokální účet webu, klikněte na Managed služby, zaškrtněte možnost Server NENÍ spravován LWS a potvrďte tlačítkem Ověřit. LWS poté server již nespravuje, což zpřístupní přihlašovací údaje v části Přístup ROOT SSH.
V ISPConfig otevřete záložku Weby, přidejte svou doménu (například „priklad.cz“), poté před uložením zaškrtněte políčka SSL a Let's Encrypt SSL.
Otevřete terminál a navážete SSH spojení pomocí svého účtu (uživatel webu ISPConfig nebo root uživatel, pokud byla managed služba vypnuta).
Chcete-li přesměrovat HTTP provoz na vaši aplikaci, aktivujte požadované moduly pomocí příkazu a2enmod proxy proxy_http a poté restartujte Apache přes systemctl restart apache2 (úkon vyžaduje administrátorská oprávnění nebo je již aktivní podle vašeho tarifu).
Nainstalujte Node.js ve verzi LTS pro vaši relaci pomocí nvm nebo repozitářů vaší distribuce a poté ověřte nainstalovanou verzi zadáním příkazu node -v.
Přejděte do adresáře vašeho webu, inicializujte projekt pomocí npm init -y, nainstalujte framework Express pomocí npm install express a vytvořte soubor server.js nakonfigurovaný tak, aby naslouchal na lokálním portu 3000.
PM2 je správce procesů pro Node.js, který umožňuje udržovat aplikace neustále aktivní a znovu je spouštět po incidentu. Nainstalujte jej pomocí npm install -g pm2, spusťte skript přes pm2 start server.js --name moja-aplikace a uložte stav pomocí pm2 save.
Reverzní proxy je meziserver, který přijímá webové požadavky návštěvníků a předává je internímu aplikačnímu serveru. V ISPConfig upravte svůj web, přejděte na záložku Možnosti a do pole Direktivy Apache přidejte: ProxyPreserveHost On následované ProxyPass / http://localhost:3000/ a ProxyPassReverse / http://localhost:3000/.
Otevřete prohlížeč a zadejte adresu vašeho webu (například https://priklad.cz), abyste viděli zabezpečené zobrazení vašeho Node.js skriptu.
Podle vašich administrátorských požadavků a zachování managed služby je možné použít několik přístupů pro integraci balíčků Node.js.
Chyba 502 Bad Gateway nebo 503 Service Unavailable znamená, že Apache nedokáže kontaktovat Node.js na nakonfigurovaném portu. Zkontrolujte, zda je vaše aplikace správně spuštěná pod PM2 pomocí příkazu pm2 status a zda opravdu naslouchá lokálně na portu 3000.
Ne. VPS s ISPConfig je ve výchozím nastavení spravován, což zajišťuje podporu vašeho serveru. Node.js můžete spustit bez root oprávnění díky nvm pod shellovým účtem vašeho webu. Pokud managed službu odstraníte kvůli získání root přístupu, přebíráte plnou správu serveru sami.
Ano, za předpokladu, že jste spustili příkaz pm2 startup a poté pm2 save. PM2 automaticky obnoví vaše skripty při startu systému.
Ano. Každé aplikaci jednoduše přiřaďte jiný lokální port (například 3000, 3001) a pro každou doménu v ISPConfig nastavte odpovídající direktivy Apache ProxyPass.
Ne. Aplikace Node.js naslouchá pouze na lokální adrese (203.0.113.10 nebo localhost). O zabezpečené webové spojení na standardních portech 80 a 443 se stará server Apache, který je interně přesměruje.
Položte ji týmu LWS a komunitě. Odpověď bude zveřejněna po kontrole moderátorem.