Zeile 193: |
Zeile 193: |
| | | |
| === Node.js === | | === Node.js === |
− | [[JavaScript]] gibt es auch auf dem Server. Node.js basiert auf der Chrome-JavaScript-Engine. | + | Siehe [[Node.js]] |
− | | |
− | Siehe
| |
− | * [https://www.airpair.com/javascript/node-js-tutorial Tutorial für Node.js]
| |
− | | |
− | ==== Installation ====
| |
− | ===== Node.js auf Debian Stretch =====
| |
− | | |
− | Node.js lässt sich am besten vom NodeSource.com repository installieren. Dazu eine Datei <code>/etc/apt/sources.list.d/nodesource.list</code> mit folgendem Inhalt anlegen:
| |
− | | |
− | deb https://deb.nodesource.com/node_8.x stretch main
| |
− | deb-src https://deb.nodesource.com/node_8.x stretch main
| |
− | | |
− | Den GPG-Key installieren:
| |
− | curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | sudo apt-key add -
| |
− | | |
− | Anschließend das Paket installieren:
| |
− | sudo aptitude update && sudo aptitude install nodejs
| |
− | | |
− | ===== Node.js auf Ubuntu / Linux Mint =====
| |
− | | |
− | Bei Installation Node.js auf einer [[Ubuntu]]-basierten Linux-Distribution ist wohl folgender Befehl zur Erstellung eines Softlinks notwendig:<ref>Siehe http://stackoverflow.com/questions/26320901/cannot-install-nodejs-usr-bin-env-node-no-such-file-or-directory</ref>
| |
− | | |
− | sudo ln -s /usr/bin/nodejs /usr/bin/node
| |
− | | |
− | ==== Einzelne Module von Node.js ====
| |
− | | |
− | ===== http - eingebauter WebServer =====
| |
− | ====== Beschränkung auf Anfragen von localhost ======
| |
− | Um Anfragen von außerhalb des <code>localhost</code> zu blocken, muss man in der <code>listen()</code>-Methode nach dem Port die Adresse des localhost (<code>"127.0.0.1"</code>) angeben.<ref>Vgl. [https://nodejs.org/api/net.html#net_server_listen API-Dokumentation von listen()]</ref> Beispiel:
| |
− | | |
− | <pre>
| |
− | server.listen(port, "127.0.0.1", (err) => {
| |
− | if (err) {
| |
− | return console.log('something bad happened', err)
| |
− | }
| |
− | | |
− | console.log(`Server is listening on ${port}`)
| |
− | })
| |
− | </pre>
| |
− | | |
− | ====== HTTP Basic Authentication ======
| |
− | | |
− | Siehe
| |
− | * https://www.sitepoint.com/http-authentication-in-node-js/
| |
| | | |
| === Mini-Web-Server === | | === Mini-Web-Server === |