从节点中不存在的路由重定向?

时间:2018-10-19 23:09:18

标签: javascript node.js

在我的应用中,如果我尝试输入一些不存在的路由,请说-www.mydomain.com/nonExistingRoute我得到的空白页面是文本:Cannot GET /nonExistingRoute/

更重要的是-如果我在本地执行操作(在本地主机上以开发模式运行应用程序时),如果我执行相同操作,则它会正确输入/路由(可以在客户端路由中设置)。但这在生产模式下(在我的域中)无法正常工作。

我在节点app.js中的应用配置:

app.use('/api', apiRouter);  // only api responds
app.use('*', express.static('public'));  // serving static files

注意:我正在激活服务器端渲染。因此,像/这样的每条路由都在服务器端预先渲染。

如果某人获得了一条不存在的路由(但没有/api),他被重定向到/,该怎么办? 谢谢!

1 个答案:

答案 0 :(得分:1)

只需将其添加为最后一条规则:

  app.use((_, res) => res.redirect("/"));