В настоящее время у меня установлен Raspian OS, на которой установлен Raspian OS, и сервер Node JS, работающий через порт 8080. Затем я настроил NGINX для использования в качестве обратного прокси-сервера для маршрутизации входящего трафика порта 80 на мой сервер в 8080.
Я пытаюсь заставить пользователя нажать кнопку HTML, которая затем вызывает функцию NodeJS, чтобы перенаправить их в Google. Теперь я не думаю, что проблема заключается в коде, потому что, если я запускаю сервер на своем локальном компьютере (не требуется nginx), все работает нормально. Однако, когда я пытаюсь получить доступ к серверу, работающему на Raspberry Pi, с моего локального компьютера: http://192.168.0.103/Authenticate.html работает и обслуживает HTML-страницу кнопкой, но затем вызывается функция http://192.168.0.103/Authenticate.js дает мне ошибку 404.
Я считаю, что у меня что-то не так в этом обратном прокси-сервере, но я ОЧЕНЬ новичок в этом, так что понятия не имею, что. Любая помощь приветствуется.
NGINX файл по умолчанию
{
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,
{Location: 'http://www.google.com'}
);
res.end();
}