Я пишу, чтобы следовать Nginx Руководству для начинающих и использовать Express в качестве бэкенда.Но я получаю ошибку после попытки:
запустить sudo nginx -t -c ~/website/my.conf
и успешно пройти тест
выполнить sudo nginx -s reload
запустить node index.js
, чтобы запустить приложение Express.
/ etc / nginx / nginx.conf (добавьте мой conf к Nginx по умолчанию conf):
...
# include /etc/nginx/conf.d/*.conf;
# include /etc/nginx/sites-enabled/*;
include ~/website/*.conf;
...
http {
server {
listen 80;
server_name www;
root ~/website/www;
location / {
proxy_pass http://localhost:7011/;
}
}
}
~ / website / www / index.js (экспресс-код)
const express = require('express');
const app = express();
const port = 7011;
app.get('/', (req, res) => res.send('hello express!'));
app.listen(port, () => console.log('Example is running at ' + port));
Я встретил отказ при запросе от Chrome.Но я получаю hello express
успешно, если использовать curl 'localhost:7011'
локально.
Нужно ли открывать порт 7011 из брандмауэра?Я думал, что прокси сделано локально.Это правильно?