Node.js gebruiken met ISPConfig op een VPS

Procédure

Om een Node.js-toepassing op uw VPS met ISPConfig uit te voeren, moet u Apache configureren als reverse proxy naar de lokale poort van uw script. Node.js is een JavaScript-runtime aan de serverzijde waarmee u snelle en schaalbare webtoepassingen kunt maken. Door een procesbeheerder zoals PM2 te combineren met ISPConfig-richtlijnen, zorgt u voor de persistentie van uw service en de beveiliging via een SSL-certificaat.

De stappen

  1. Toegang krijgen tot het beheer van uw VPS

    Meld u aan bij uw klantenruimte, ga naar de rubriek Servers en klik vervolgens op Beheren naast uw VPS-machine onder ISPConfig.

    Node.js gebruiken met ISPConfig op een VPS
  2. De ISPConfig-interface openen

    Klik in het dashboard van uw server op Beheerpaneel om verbinding te maken met de ISPConfig-console.

    Node.js gebruiken met ISPConfig op een VPS
  3. Beheerdienst en root-toegang beheren indien nodig

    Als u ervoor kiest Node.js globaal voor het hele systeem te installeren in plaats van voor het lokale account van de site, klik dan op Beheerdienst, vink de optie Server NIET beheerd door LWS aan en bevestig met Valideren. LWS beheert de server dan niet meer, waardoor de inloggegevens onder ROOT SSH-toegang beschikbaar komen.

    Node.js gebruiken met ISPConfig op een VPS
  4. De website aanmaken en het SSL-certificaat activeren

    Open in ISPConfig het tabblad Sites, voeg uw domein toe (bijvoorbeeld « exemple.fr »), en vink vervolgens de vakjes SSL en Let's Encrypt SSL aan voordat u opslaat.

  5. Via SSH verbinding maken met de server

    Open uw terminal en maak de SSH-verbinding met uw account (ISPConfig-sitegebruiker of rootgebruiker als de beheerdienst is verwijderd).

    Node.js gebruiken met ISPConfig op een VPS
  6. De Apache-proxy-modules activeren

    Om het HTTP-verkeer naar uw toepassing om te leiden, activeert u de vereiste modules met het commando a2enmod proxy proxy_http en herstart u Apache via systemctl restart apache2 (actie waarvoor beheerdersrechten nodig zijn of die al actief is afhankelijk van uw formule).

  7. Node.js LTS installeren

    Installeer Node.js in LTS-versie op uw sessie met behulp van nvm of de pakketrepositories van uw distributie, en controleer vervolgens de geïnstalleerde versie door het commando node -v in te voeren.

  8. De minimale Express-toepassing aanmaken

    Ga naar de map van uw website, initialiseer een project met npm init -y, installeer het Express-framework met npm install express en maak een bestand server.js aan dat is geconfigureerd om op de lokale poort 3000 te luisteren.

  9. De toepassing starten en persistent maken met PM2

    PM2 is een procesbeheerder voor Node.js waarmee toepassingen continu actief blijven en na een incident opnieuw worden opgestart. Installeer het met npm install -g pm2, start uw script via pm2 start server.js --name mon-app en sla de status op met pm2 save.

  10. De Apache reverse proxy in ISPConfig configureren

    Een reverse proxy is een tussenliggende server die webverzoeken van bezoekers ontvangt en doorstuurt naar de interne toepassingsserver. Bewerk in ISPConfig uw site, ga naar het tabblad Opties, en voeg vervolgens in het veld Apache-richtlijnen toe: ProxyPreserveHost On gevolgd door ProxyPass / http://localhost:3000/ en ProxyPassReverse / http://localhost:3000/.

  11. De werking testen via HTTPS

    Open uw browser en voer het adres van uw site in (bijvoorbeeld https://exemple.fr) om te zien dat uw beveiligde Node.js-script wordt weergegeven.

Installatiemethoden voor Node.js op uw VPS

Er zijn verschillende benaderingen mogelijk om Node.js-pakketten te integreren, afhankelijk van uw beheersvereisten en het behoud van uw beheerdienst.

  • Installatie via NVM (Node Version Manager) — Hiermee kunt u meerdere versies van Node.js rechtstreeks in de gebruikersmap installeren en beheren, zonder root-privileges en zonder de beheerdienst van de VPS te wijzigen.
  • Installatie via de APT-pakketbeheerder van Debian — Installeert een globale stabiele versie voor het hele besturingssysteem, waarvoor rootrechten en het uitschakelen van de beheerdienst nodig zijn.

Veelgestelde vragen

Waarom geeft mijn site een 502- of 503-fout weer?

Een 502 Bad Gateway- of 503 Service Unavailable-fout geeft aan dat Apache Node.js niet kan bereiken op de geconfigureerde poort. Controleer of uw toepassing correct is gestart onder PM2 met het commando pm2 status en of deze lokaal op poort 3000 luistert.

Is LWS-beheerdienst verplicht om Node.js te laten werken?

Nee. De ISPConfig-VPS wordt standaard beheerd, wat de ondersteuning van uw server garandeert. U kunt Node.js zonder root laten werken dankzij nvm onder het shell-account van uw site. Als u de beheerdienst verwijdert om root-toegang te krijgen, beheert u zelf de volledige serveradministratie.

Herstart mijn Node.js-toepassing als de VPS opnieuw wordt opgestart?

Ja, op voorwaarde dat u het commando pm2 startup en vervolgens pm2 save hebt uitgevoerd. PM2 activeert uw scripts automatisch opnieuw bij het opstarten van het systeem.

Kan ik meerdere Node.js-toepassingen op dezelfde server draaien?

Ja. Wijs gewoon een andere lokale poort toe aan elke toepassing (bijvoorbeeld 3000, 3001) en configureer de overeenkomstige Apache ProxyPass-richtlijnen voor elk domein in ISPConfig.

Moet ik de poort van mijn toepassing openen in de firewall?

Nee. De Node.js-toepassing luistert alleen op het lokale adres (203.0.113.10 of localhost). Het is de Apache-server die de beveiligde webverbindingen op de standaardpoorten 80 en 443 ontvangt om ze intern door te sturen.

Nuttige links

help.lws.net/a/7952
Was dit artikel nuttig?

Ja

Geen

3 keer gelezen

Bedankt! Stel gerust vragen over onze documentatie als u meer informatie wilt, en help ons die te verbeteren.

Vergelijkbare artikelen

Een vraag over dit artikel?

Stel ze aan het LWS-team en de community. Het antwoord wordt na moderatie gepubliceerd.

Stel een vraag aan het LWS-team en de gemeenschap

AVG: Verwerkingsverantwoordelijke: LWS-Ligne Web Services. Doel: moderatie en openbare publicatie van uw vraag, eventuele melding van een antwoord. Rechtsgrond: toestemming (art. 6, lid 1, a AVG). Bewaartermijn e-mailadressen: 90 dagen na de melding, maximaal 12 maanden zonder antwoord. Om uw rechten uit te oefenen, raadpleeg de AVG-sectie van onze algemene voorwaarden.