Node.js mit ISPConfig auf einem VPS

Procédure

Um eine Node.js-Anwendung auf Ihrem VPS mit ISPConfig auszuführen, müssen Sie Apache als Reverse Proxy zum lokalen Port Ihres Skripts konfigurieren. Node.js ist eine serverseitige JavaScript-Laufzeitumgebung, mit der sich schnelle und skalierbare Webanwendungen erstellen lassen. Durch die Kombination eines Prozessmanagers wie PM2 mit den ISPConfig-Anweisungen stellen Sie die Persistenz Ihres Dienstes und die Absicherung per SSL-Zertifikat sicher.

Die Schritte

  1. Auf die Verwaltung Ihres VPS zugreifen

    Melden Sie sich in Ihrem Kundenbereich an, gehen Sie zum Bereich Server und klicken Sie dann bei Ihrer VPS-Maschine unter ISPConfig auf Verwalten.

    Node.js mit ISPConfig auf einem VPS
  2. Die ISPConfig-Oberfläche öffnen

    Klicken Sie im Dashboard Ihres Servers auf Administrationspanel, um sich mit der ISPConfig-Konsole zu verbinden.

    Node.js mit ISPConfig auf einem VPS
  3. Das Managed Hosting und den Root-Zugriff bei Bedarf verwalten

    Wenn Sie Node.js systemweit für das gesamte System statt für das lokale Benutzerkonto der Website installieren möchten, klicken Sie auf Infogérance, aktivieren Sie die Option Serveur NON infogéré par LWS und bestätigen Sie mit Valider. LWS verwaltet den Server dann nicht mehr, wodurch die Zugangsdaten unter Accès ROOT SSH freigeschaltet werden.

    Node.js mit ISPConfig auf einem VPS
  4. Die Website erstellen und das SSL-Zertifikat aktivieren

    Öffnen Sie in ISPConfig den Reiter Sites, fügen Sie Ihre Domain hinzu (zum Beispiel « exemple.fr ») und aktivieren Sie dann die Kontrollkästchen SSL und Let's Encrypt SSL, bevor Sie speichern.

  5. Per SSH mit dem Server verbinden

    Öffnen Sie Ihr Terminal und stellen Sie die SSH-Verbindung mit Ihrem Konto her (ISPConfig-Website-Benutzer oder Root-Benutzer, falls das Managed Hosting entfernt wurde).

    Node.js mit ISPConfig auf einem VPS
  6. Apache-Proxy-Module aktivieren

    Um den HTTP-Verkehr zu Ihrer Anwendung umzuleiten, aktivieren Sie die erforderlichen Module mit dem Befehl a2enmod proxy proxy_http und starten Sie dann Apache mit systemctl restart apache2 neu (Aktion, die je nach Ihrem Tarif Administratorrechte erfordert oder bereits aktiv ist).

  7. Node.js LTS installieren

    Installieren Sie Node.js in der LTS-Version in Ihrer Sitzung mithilfe von nvm oder den Repositories Ihrer Distribution und prüfen Sie anschließend die installierte Version mit dem Befehl node -v.

  8. Die minimale Express-Anwendung erstellen

    Wechseln Sie in das Verzeichnis Ihrer Website, initialisieren Sie ein Projekt mit npm init -y, installieren Sie das Express-Framework mit npm install express und erstellen Sie eine Datei server.js, die so konfiguriert ist, dass sie auf dem lokalen Port 3000 lauscht.

  9. Die Anwendung mit PM2 starten und dauerhaft betreiben

    PM2 ist ein Prozessmanager für Node.js, mit dem Anwendungen kontinuierlich aktiv gehalten und nach einem Vorfall neu gestartet werden können. Installieren Sie ihn mit npm install -g pm2, starten Sie Ihr Skript mit pm2 start server.js --name mon-app und speichern Sie den Status mit pm2 save.

  10. Den Apache-Reverse-Proxy in ISPConfig konfigurieren

    Ein Reverse Proxy ist ein Zwischensystem, das die Webanfragen der Besucher entgegennimmt und an den internen Anwendungsserver weiterleitet. Bearbeiten Sie in ISPConfig Ihre Website, wechseln Sie zum Reiter Options und fügen Sie dann im Feld Directives Apache Folgendes ein: ProxyPreserveHost On gefolgt von ProxyPass / http://localhost:3000/ und ProxyPassReverse / http://localhost:3000/.

  11. Die Funktion über HTTPS testen

    Öffnen Sie Ihren Browser und geben Sie die Adresse Ihrer Website ein (zum Beispiel https://exemple.fr), um die Anzeige Ihres gesicherten Node.js-Skripts zu sehen.

Installationsmethoden für Node.js auf Ihrem VPS

Je nach Ihren Verwaltungsanforderungen und dem Erhalt Ihres Managed Hostings sind mehrere Ansätze möglich, um Node.js-Pakete zu integrieren.

  • Installation über NVM (Node Version Manager) — Ermöglicht die Installation und Verwaltung mehrerer Node.js-Versionen direkt im Benutzerverzeichnis, ohne Root-Rechte und ohne das Managed Hosting des VPS zu ändern.
  • Installation über den Debian-Paketmanager APT — Installiert eine stabile globale Version für das gesamte Betriebssystem, erfordert Root-Rechte und die Deaktivierung des Managed Hostings.

Häufig gestellte Fragen

Warum zeigt meine Website einen 502- oder 503-Fehler an?

Ein 502 Bad Gateway- oder 503 Service Unavailable-Fehler bedeutet, dass Apache Node.js auf dem konfigurierten Port nicht erreichen kann. Prüfen Sie mit dem Befehl pm2 status, ob Ihre Anwendung unter PM2 korrekt gestartet ist, und dass sie lokal auf Port 3000 lauscht.

Ist das LWS-Managed Hosting zwingend erforderlich, damit Node.js funktioniert?

Nein. Der ISPConfig-VPS wird standardmäßig verwaltet, wodurch die Betreuung Ihres Servers gewährleistet ist. Sie können Node.js ohne Root-Rechte dank nvm unter dem Shell-Konto Ihrer Website betreiben. Wenn Sie das Managed Hosting entfernen, um Root-Zugriff zu erhalten, übernehmen Sie die vollständige Verwaltung des Servers selbst.

Startet meine Node.js-Anwendung neu, wenn der VPS neu gestartet wird?

Ja, vorausgesetzt, Sie haben den Befehl pm2 startup und anschließend pm2 save ausgeführt. PM2 reaktiviert Ihre Skripte beim Systemstart automatisch.

Kann ich mehrere Node.js-Anwendungen auf demselben Server betreiben?

Ja. Weisen Sie einfach jeder Anwendung einen anderen lokalen Port zu (zum Beispiel 3000, 3001) und konfigurieren Sie die entsprechenden Apache-ProxyPass-Anweisungen für jede Domain in ISPConfig.

Muss ich den Port meiner Anwendung in der Firewall öffnen?

Nein. Die Node.js-Anwendung lauscht nur auf der lokalen Adresse (203.0.113.10 oder localhost). Der Apache-Server empfängt die gesicherten Webverbindungen auf den Standardports 80 und 443 und leitet sie intern weiter.

Nützliche Links

help.lws.net/a/7952
War dieser Artikel hilfreich?

Ja

Nicht

3 Mal gelesen

Vielen Dank! Stellen Sie gerne Fragen zu unserer Dokumentation, wenn Sie weitere Informationen wünschen, und helfen Sie uns, sie zu verbessern.

Ähnliche Artikel

Eine Frage zu diesem Artikel?

Stellen Sie sie dem LWS-Team und der Community. Die Antwort wird nach Moderation veröffentlicht.

Stellen Sie eine Frage an das LWS-Team und seine Gemeinschaft

DSGVO: Verantwortlicher: LWS-Ligne Web Services. Zweck: Moderation und öffentliche Veröffentlichung Ihrer Frage, gegebenenfalls Benachrichtigung über eine Antwort. Rechtsgrundlage: Einwilligung (Art. 6 Abs. 1 lit. a DSGVO). Speicherdauer der E-Mail-Adressen: 90 Tage nach der Benachrichtigung, höchstens 12 Monate ohne Antwort. Zur Ausübung Ihrer Rechte siehe den DSGVO-Abschnitt unserer AGB.