我有以下路线配置:
const app = express();
app.use('/site', express.static(path.join(__dirname, '../../site/static')));
app.use('/site*', express.static(path.join(__dirname, '../../site/static')));
现在,当我访问应用http://localhost:8080/site/bla?asdad
时,我被重定向到http://localhost:8080/site/bla/?asdad
(请注意问号前添加的斜线)。
应用程序使用angular(1)编写,它会使路由器(ui-router)转到默认路由器。
在应用程序中导航(单击指向不同状态的链接)时,一切正常,但刷新时会添加斜杠并重定向到默认路径。
我尝试将{redirect: false}
添加到静态middelware选项,但它导致此网址http://localhost:8080/site/bla/?asdad
返回:
Cannot GET /site/bla
我该怎么做才能让它发挥作用。
答案 0 :(得分:0)
这就是我的工作方式:
app.use('/site', express.static(path.join(__dirname, '../../site/static')));
app.use('/site*', (req, res) => {
res.sendfile(path.join(__dirname, '../../site/static/index.html');
});