react项目中browserhistory模式下进入二级页面报404错误
如果你使用的是 React Router v5,使用 BrowserRouter 组件可以实现浏览器路由模式。但是在使用 BrowserRouter 组件时,你需要在服务器上配置一个 fallback 配置,以便在访问不存在的页面时,服务器可以返回 index.html 而不是 404 错误页面。
以下是一个示例配置文件:
const express = require('express');
const path = require('path');
const app = express();
app.use(express.static(path.join(__dirname, 'build')));
app.get('*', (req, res) => {
res.sendFile(path.join(__dirname, 'build/index.html'));
});
const port = process.env.PORT || 3000;
app.listen(port, () => {
console.log(`App is listening on port ${port}`);
});
在上面的代码中,我们使用了 express 模块来启动一个服务器,并将 build 目录设置为静态文件目录。然后,我们在所有路由中添加了一个通配符,以便在访问任何不存在的页面时,将返回 index.html 文件。
如果你使用的是其他服务器框架,你需要查看框架的文档,了解如何配置 fallback
原文地址: http://www.cveoy.top/t/topic/cHJo 著作权归作者所有。请勿转载和采集!