
1. Log in met SSH op uw Mangelot Hosting-webhostingaccount.
2. Typ de volgende opdrachten in de opdrachtprompt:
LET OP: Pas de bestandsnaam aan naar de meest recente versie van Node.js.
Deze handleiding is gebaseerd op versie “node-v12.9.1-linux-x64.tar.xz”.
cd ~
wget https://nodejs.org/dist/v12.9.1/node-v12.9.1-linux-x64.tar.xz
3. Typ de volgende opdracht om de Node.js-bestanden uit te pakken:
tar xvf node-v12.9.1-linux-x64.tar.xz
4. Als u de uitgepakte map de handigere naam “nodejs” wilt geven, typt u de volgende opdracht:
mv node-v12.9.1-linux-x64 nodejs
5. Als u de binaire bestanden van node en npm wilt installeren, typt u de volgende opdrachten:
mkdir ~/bin
cp nodejs/bin/node ~/bin
cd ~/bin
ln -s ../nodejs/lib/node_modules/npm/bin/npm-cli.js npm
6. Voeg node toe aan uw PATH, zodat dit ook in toekomstige sessies werkt:
export PATH=$HOME/nodejs/bin:$PATH
echo 'export PATH=$HOME/nodejs/bin:$PATH' >> ~/.bashrc
7. Nadat u deze opdrachten hebt uitgevoerd, zijn Node.js en npm geïnstalleerd in uw account. Typ de volgende opdrachten om dit te controleren:
node --version
npm --version
Als de installatie is gelukt, ziet u de versienummers verschijnen.
De map ~/bin staat standaard in uw PATH. U kunt node en npm dus vanuit elke map in uw account uitvoeren.
Om de installatie te testen, kunt u bijvoorbeeld het onderstaande bestand app.js gebruiken, dat de melding “Hello World” toont. Dit voorbeeldscript voor Node.js gebruikt poort 3000.
app.js
const http = require('http');
const hostname = '127.0.0.1';
const port = 3000;
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('Hello World');
});
server.listen(port, hostname, () => {
console.log(`Server running at http://${hostname}:${port}/`);
});

Een Node.js-toepassing starten
Nadat u Node.js hebt geïnstalleerd, kunt u Node.js-toepassingen uitvoeren. De exacte stappen hiervoor verschillen echter per toepassing, afhankelijk van de configuratie.
Methode 1: npm gebruiken
Veel toepassingen van derden en productieklare toepassingen (zoals Ghost) gebruiken npm om de toepassing te starten, bijvoorbeeld met de volgende opdracht:
nohup npm start --production &
Het &-teken in de bovenstaande opdracht plaatst de opdracht op de achtergrond en met nohup blijft de toepassing draaien, zelfs als u zich afmeldt bij de huidige terminalsessie.
Deze methode werkt alleen als de toepassing een geldig package.json-bestand heeft. Dit bestand bevat metagegevens over het project. Het npm-programma leest die gegevens om te bepalen hoe de toepassing moet worden gestart, hoe de afhankelijkheden worden beheerd en meer.
De officiële npm-documentatie over het bestand package.json vindt u op https://docs.npmjs.com/files/package.json.
Methode 2: node rechtstreeks uitvoeren
Voor eenvoudige toepassingen en toepassingen zonder package.json-bestand kunt u het uitvoerbare bestand van node rechtstreeks uitvoeren en de bestandsnaam van de toepassing opgeven. Bijvoorbeeld:
nohup node app.js &
U mist dan echter de voordelen van npm bij het beheren van de toepassing.
Zoals hierboven vermeld, plaatst het &-teken de opdracht op de achtergrond en zorgt nohup ervoor dat de toepassing blijft werken, zelfs als u zich afmeldt bij de huidige terminalsessie.
Een Node.js-toepassing stoppen
Typ de volgende opdracht als u een actieve Node.js-toepassing wilt stoppen:
pkill node
Met deze opdracht worden onmiddellijk alle actieve Node.js-toepassingen gestopt.
Een Node.js-toepassing integreren met de webserver
Afhankelijk van het type Node.js-toepassing wilt u deze mogelijk via een webbrowser kunnen openen. Hiervoor kiest u een ongebruikte poort waarop uw Node.js-toepassing luistert en definieert u vervolgens herschrijfregels voor de server, die bezoekers doorsturen naar de toepassing. De volgende stappen laten zien hoe u dit doet.
Voeg in een teksteditor de volgende regels toe aan het .htaccess-bestand in de map /home/gebruikersnaam/public_html, waarbij gebruikersnaam staat voor de gebruikersnaam van uw account:
.htaccess-bestand
DirectoryIndex disabled
RewriteEngine On
RewriteRule ^$ http://127.0.0.1:XXXXX/ [P,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ http://127.0.0.1:XXXXX/$1 [P,L]
Deze herschrijfregels sturen binnenkomende HTTP-aanvragen van bezoekers door naar de Node.js-toepassing die lokaal op de server draait. 127.0.0.1 is het loopback-adres van localhost.
Vervang in beide RewriteRule-regels XXXXX door het poortnummer waarop uw Node.js-toepassing luistert (in het eerder genoemde voorbeeldscript app.js is dat poort 3000).
Als u een Node.js-toepassing wilt uitvoeren op een beheerde Mangelot Hosting-server, moet u een ongebruikte poort tussen 30000 en 50000 (inclusief) kiezen.
Sla de wijzigingen op in het .htaccess-bestand en sluit de teksteditor af. Bezoekers van uw website worden nu doorgestuurd naar de Node.js-toepassing die op de opgegeven poort luistert.
Als uw toepassing niet start, is de poort die u hebt gekozen mogelijk al in gebruik. Controleer het logboek van de toepassing op foutcodes zoals EADDRINUSE; die geven aan dat de poort al in gebruik is. Is dat het geval, kies dan een ander poortnummer, werk de configuratie van uw toepassing en het .htaccess-bestand bij en probeer het opnieuw.
Meer informatie over Node.js vindt u op http://nodejs.org.