前言:在基于React-Router的SPA项目部署上线后,会出现刷新或访问具体路径时浏览器页面404的问题,本质上是由于所有的URL默认先经后端处理,但后端无该路由处理模块或该路径/文件,导致返回404。该问题通过如下方式解决:
- 通过配置Nginx,访问任何URI都指向index.html,浏览器上的path,会自动被React-router处理,进行无刷新跳转。
location / {
root html;
index index.html index.htm;
try_files $uri /index.html;
}
- 除此之外,据查阅,还可以通过修改webpack-dev-server和后台node服务器配置的方式更改。
具体可参考
https://www.thinktxt.com/react/2017/02/26/react-router-browserHistory-refresh-404-solution.html