NodeJS
Eigene NodeJS Installation
Die JavaScript-Umgebung NodeJS für das Ausführen von JavaScript auf dem Server unterliegt noch einer rasanten Entwicklung. Daher ist die Debian-Version, die bei Hostsharing vorinstalliert ist, oft zu alt für aktuelle Software.
Ein kurze Anleitung für die eigene NodeJS-Installation für einen User.
Installation von nvm
Heute ist die Version v0.33.2 aktuell, siehe auch https://github.com/creationix/nvm/releases
$ touch ~/.profile $ chmod u+x ~/.profile $ cd /tmp $ wget https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh $ chmod u+x install.sh $ ./install.sh
An dieser Stelle ab- und wieder anmelden oder die Befehle ausführen:
$ export NVM_DIR="/home/pacs/xyz00/users/example/.nvm" $ [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
Installation von NodeJS
Mit dem Befehl
$ nvm install 4.8.4 $ nvm alias default 4.8.4
läßt sich (zum Beispiel) sehr einfach NodeJS in der Version 4.8.4 installieren.
analog für die Version 6.11.x
$ nvm install 6.11.2 $ nvm alias default 6.11.2
Der Befehl
$ node -v
gibt die Version von NodeJS aus.
NodeJS Web-Applikation
Zur Nutzung der eigenen NodeJS-Installation mit mit dem Apache-Modul "Passenger" konfiguriert man den Pfad zum node-Binärprogramm in einer ".htaccess"-Datei im Verzeichnis der Domain "/home/pacs/xyz00/users/example/doms/example.com/.htaccess":
PassengerNodejs /home/pacs/xyz00/users/example/.nvm/versions/node/v4.8.4/bin/node
bzw.
PassengerNodejs /home/pacs/xyz00/users/example/.nvm/versions/node/v6.11.2/bin/node
Zum Testen kann man eine "app.js" ins Verzeichnis "/home/pacs/xyz00/users/example/doms/example.com/app-ssl/" ablegen.
Eine minimale "app.js" zur Anzeige der NodeJS Version:
var http = require("http"); http.createServer(function (request, response) { response.writeHead(200, {'Content-Type': 'text/plain'}); response.write('node version ' + process.version + '\n'); response.end(); }).listen(3000);
Weitere Installationen
Mit dem "Node Package Manager" npm läßt sich weitere Software in die Node-Umgebung installieren:
$ npm install -g gulp