Använda Node.js med ISPConfig på en VPS

Procédure

För att köra en Node.js-applikation på din VPS med ISPConfig måste du konfigurera Apache som en omvänd proxy mot det lokala portnumret för ditt skript. Node.js är en JavaScript-körmiljö på serversidan som gör det möjligt att skapa snabba och skalbara webbapplikationer. Genom att kombinera en processhanterare som PM2 och ISPConfig-direktiv säkerställer du att din tjänst fortsätter att vara igång och skyddas med ett SSL-certifikat.

Stegen

  1. Gå till hanteringen av din VPS

    Logga in på ditt kundkonto, gå till avsnittet Servrar och klicka sedan på Hantera bredvid din VPS-maskin under ISPConfig.

    Använda Node.js med ISPConfig på en VPS
  2. Öppna ISPConfig-gränssnittet

    I serverns kontrollpanel klickar du på Adminpanel för att ansluta till ISPConfig-konsolen.

    Använda Node.js med ISPConfig på en VPS
  3. Hantera driftshantering och root-åtkomst vid behov

    Om du väljer att installera Node.js globalt för hela systemet i stället för för webbplatsens lokala konto, klicka på Driftshantering, markera alternativet Server som INTE driftas av LWS och bekräfta med Validera. LWS hanterar då inte längre servern, vilket låser upp inloggningsuppgifterna i ROOT SSH-åtkomst.

    Använda Node.js med ISPConfig på en VPS
  4. Skapa webbplatsen och aktivera SSL-certifikatet

    I ISPConfig öppnar du fliken Webbplatser, lägger till din domän (till exempel « exemple.fr ») och kryssar sedan i rutorna SSL och Let's Encrypt SSL innan du sparar.

  5. Anslut via SSH till servern

    Öppna din terminal och upprätta SSH-anslutningen med ditt konto (ISPConfig-webbplatsanvändare eller root-användare om driftshanteringen har tagits bort).

    Använda Node.js med ISPConfig på en VPS
  6. Aktivera Apaches proxy-moduler

    För att dirigera om HTTP-trafiken till din applikation aktiverar du de nödvändiga modulerna med kommandot a2enmod proxy proxy_http och startar sedan om Apache via systemctl restart apache2 (åtgärd som kräver administratörsrättigheter eller redan är aktiv beroende på ditt abonnemang).

  7. Installera Node.js LTS

    Installera Node.js i LTS-version på din session med hjälp av nvm eller din distributions paketförråd och kontrollera sedan den installerade versionen genom att skriva kommandot node -v.

  8. Skapa den minimala Express-applikationen

    Gå till katalogen för din webbplats, initiera ett projekt med npm init -y, installera ramverket Express med npm install express och skapa en fil server.js konfigurerad för att lyssna på den lokala porten 3000.

  9. Starta och säkra applikationen med PM2

    PM2 är en processhanterare för Node.js som gör det möjligt att hålla applikationer igång kontinuerligt och starta om dem efter en incident. Installera den med npm install -g pm2, starta ditt skript via pm2 start server.js --name mon-app och spara tillståndet med pm2 save.

  10. Konfigurera Apaches omvända proxy i ISPConfig

    En omvänd proxy är en mellanliggande server som tar emot besökarnas webbförfrågningar för att vidarebefordra dem till den interna applikationsservern. I ISPConfig redigerar du din webbplats, går till fliken Alternativ och lägger sedan till följande i fältet Apache-direktiv: ProxyPreserveHost On följt av ProxyPass / http://localhost:3000/ och ProxyPassReverse / http://localhost:3000/.

  11. Testa funktionen via HTTPS

    Öppna din webbläsare och ange adressen till din webbplats (till exempel https://exemple.fr) för att se att ditt säkrade Node.js-skript visas.

Installationsmetoder för Node.js på din VPS

Flera tillvägagångssätt är möjliga för att integrera Node.js-paketen beroende på dina administrationskrav och om du vill behålla driftshanteringen.

  • Installation via NVM (Node Version Manager) — Gör det möjligt att installera och hantera flera versioner av Node.js direkt i användarkatalogen, utan root-privilegier och utan att ändra VPS:ens driftshantering.
  • Installation via Debians APT-pakethanterare — Installerar en global stabil version för hela operativsystemet, vilket kräver root-rättigheter och att driftshanteringen inaktiveras.

Vanliga frågor

Varför visar min webbplats ett 502- eller 503-fel?

Ett 502 Bad Gateway- eller 503 Service Unavailable-fel betyder att Apache inte kan nå Node.js på den konfigurerade porten. Kontrollera att din applikation verkligen är igång under PM2 med kommandot pm2 status och att den lyssnar lokalt på port 3000.

Är LWS driftshantering obligatorisk för att Node.js ska fungera?

Nej. ISPConfig-VPS:n är som standard driftad, vilket garanterar hanteringen av din server. Du kan köra Node.js utan root tack vare nvm under din webbplats shell-konto. Om du tar bort driftshanteringen för att få root-åtkomst ansvarar du själv för all administration av servern.

Startar min Node.js-applikation om när VPS:en startas om?

Ja, förutsatt att du har kört kommandot pm2 startup och sedan pm2 save. PM2 återaktiverar automatiskt dina skript när systemet startar.

Kan jag köra flera Node.js-applikationer på samma server?

Ja. Tilldela helt enkelt en annan lokal port till varje applikation (till exempel 3000, 3001) och konfigurera motsvarande Apache ProxyPass-direktiv för varje domän i ISPConfig.

Måste jag öppna porten för min applikation i brandväggen?

Nej. Node.js-applikationen lyssnar endast på den lokala adressen (203.0.113.10 eller localhost). Det är Apache-servern som tar emot de säkra webbanslutningarna på standardportarna 80 och 443 och vidarebefordrar dem internt.

Användbara länkar

help.lws.net/a/7952
Var den här artikeln till hjälp?

Ja

Nej

Läst 3 gånger

Tack! Ställ gärna frågor om vår dokumentation om du vill ha mer information och hjälp oss att förbättra den.

Liknande artiklar

En fråga om den här artikeln?

Ställ den till LWS-teamet och communityn. Svaret publiceras efter moderering.

Ställ en fråga till AWS-teamet och dess community

GDPR: Personuppgiftsansvarig: LWS-Ligne Web Services. Ändamål: moderering och offentlig publicering av din fråga, eventuellt meddelande om ett svar. Rättslig grund: samtycke (art. 6.1 a GDPR). Lagring av e-postadresser: 90 dagar efter meddelandet, högst 12 månader utan svar. För att utöva dina rättigheter, se GDPR-avsnittet i våra allmänna villkor.