NodeJS Server auf Raspberry Pi ruft keine Funktion auf
Ich habe derzeit ein Himbeer-Pi, auf dem Raspian OS ausgeführt wird, auf dem ein Node-JS-Server an Port 8080 ausgeführt wird. Ich konfiguriere dann NGINX, um als Reverse-Proxy den ankommenden Port 80-Verkehr bei 8080 an meinen Server weiterzuleiten.
Ich versuche, den Benutzer auf eine HTML-Schaltfläche klicken zu lassen, die dann eine NodeJS-Funktion aufruft, um sie an Google weiterzuleiten. Jetzt denke ich nicht, dass das Problem im Code liegt, denn wenn ich den Server auf meinem lokalen Computer betreibe (kein Nginx erforderlich), funktioniert alles einwandfrei. Wenn ich jedoch versuche, auf den Server, der auf dem Raspberry Pi ausgeführt wird, von meinem lokalen Computer aus zuzugreifen: http://192.168.0.103/Authenticate.html, bedient die HTML-Seite mit der Schaltfläche und dann den Funktionsaufruf http://192.168.0.103 /Authenticate.js gibt mir einen 404-Fehler.
Ich glaube, ich habe etwas falsches Setup in diesem Reverse Proxy, aber ich bin SEHR neu in diesem Bereich, also habe ich keine Ahnung, was. Jede Hilfe wird geschätzt.
NGINX-Standarddatei
{ listen 80; listen [::]:80; root /home/pi/Cortana; server_name _; location / { proxy_pass http://127.0.0.1:8080; try_files $uri 4uri/ =404; } }
OAuthTest.html
<form method="post" action="/Authenticate.js"> <input type="submit" value="Login with Reddit" > </form>
OAuthTest.js
const http = require('http'); const request = require('request'); const fs = require('fs'); const express = require('express'); const app = express(); const server = http.createServer(app); app.get('/', serveDefaultHTML); app.get('/OAuthTest.html', serveAuthHTML); app.post("/Authenticate.js", function(req, res){ console.log("Here"); redirecting(req, res); }); server.listen(8080, function(){ console.log("Listening on http://localhost:8080"); }); function serveAuthHTML(req, res){ fs.readFile("OAuthTest.html", function(err, data){ if (err){ res.writeHead(404, {'Content-Type': 'text/html'}); res.end(err); return; } res.writeHead(200, {'Content-Type': 'text/html'}); res.end(data); }); } function serveDefaultHTML(req, res){ res.writeHead(200, {'Content-Type': 'text/html'}); res.write("Welcome to my server!") res.end("Request url: " + req.url); } function redirecting(req, res){ console.log("Redirecting"); res.writeHead(301, ); res.end(); }
0 Antworten auf die Frage
Verwandte Probleme
-
1
Verwendung von GoDaddy als Proxy Server
-
7
Wie kann ich meinen Heim-PC zum Webserver machen?
-
6
Richten Sie das Heimintranet ein
-
5
Leiten Sie den Port 80 eines Linksys WRT54GL an den Port 80 einer einzelnen IP im lokalen Netzwerk w...
-
3
Nach dem Zugriff auf ein kennwortgeschütztes Verzeichnis wird ein Verbot von 403 angezeigt
-
4
Unberührbare Datei auf Linux-Server, auch wenn die Berechtigung == 777
-
1
Warum kann ich nicht remote auf meinen Server (mit XAMPP unter Ubuntu) zugreifen?
-
1
Cron Job Problem - Kein solcher Datei- oder Verzeichnisfehler
-
3
Datei URL der Website verstecken / verstecken
-
1
Mac-Webserver, MySQL-Sicherheit