我有一个非常基本的节点表示应用程序,然后还有根路由,它不起作用。因此,当我加载页面时,家庭ejs加载就很好。我什至可以更改它正在呈现的ejs模板。但是,如果我将domain.com/about或主页上的锚标记放置到/ about或/ services或其他任何内容上,则它将不起作用。我在运行nginx的ubuntu 18.04服务器上。该应用程序在另一条路线上,但这些路线均不起作用。
const express = require('express');
const ejs = require('ejs');
const app = express();
app.set('view engine', 'ejs');
app.use(bodyParser.urlencoded({
extended: true
}));
app.use(express.static(__dirname + '/public'));
app.get("/", function(req, res) {
res.render('home');
});
app.get("/services", function(req, res) {
res.render('services');
});
app.get("/contact", function(req, res) {
res.render('contact');
});
app.get("/about", function(req, res) {
res.render('about');
});
此问题在NGINX方面。
我必须删除该行:
try_files $uri $uri/ =404;
一旦我从配置文件中删除了它。路线按预期工作。