我的网站有时会引发404错误,即使我的索引文件中有正确的路径。 当发生404错误时,我重新加载页面并正确上传页面。 即使通过重新加载页面成功上传页面,我认为它不稳定... 你有什么主意吗?我不知道为什么会这样。
这是我对主页的路由和处理程序! 我使用vhost连接域
app1.get('/',(req,res)=>{
var arr = poplist;
var type = 'recommended';
var session = null;
if(req.session.user){
session = req.session;
}
if (req.session.series_id){ /*5*/
var search_car = req.session.series_id;
arr.unshift({'id':req.session.series_id,'series_name':req.session.manu_name + ' ' + req.session.series_name});
type = 'mycar';
} else {
var search_car = recommend_car(arr).id; /*4*/
}
get_recommend_container(arr,function(err,recommend_container){
if (err) { res.send('err') }
else {
get_best_reviews_container(function(err,best_reviews_container){
if (err) { res.send('err') }
else {
/*search_car for query in menubar*/
res.render('main', {'type':type,'poplist':poplist,'recommend_container':recommend_container,'best_reviews_container':best_reviews_container,'search_car':search_car,'session':session});
}
});
}
});
});
...
app.use(vhost('mysite.com', app1));
app.use(function(req, res, next) {
res.status(404).send('Sorry cannot find the page!');
});
app.listen(8000,'myip',function(){
console.log("Connected to 8000 port!..")
});
答案 0 :(得分:0)
您明确定义了“404中间件”:
app.use(function(req, res, next) {
res.status(404).send('Sorry cannot find the page!');
});
这意味着每当您的应用收到任何请求时,它都会执行将发送回404的中间件。
文档:https://expressjs.com/en/guide/using-middleware.html
此示例显示没有装载路径的中间件功能。该 每次应用收到请求时都会执行该功能。
var app = express()
app.use(function (req, res, next) {
console.log('Time:', Date.now())
next()
})