React:在 Linux 部署后无法直接访问二级路由
表现
先进入首页,再切换至二级路由是可以的,但在二级路由刷新浏览器,则会报错404
原因
- 通过 nginx 部署时,访问二路路由(如
/check
),会自动访问/check/index.html
文件。 - 由于 React 是单页应用,所以在二级目录
/check
下没有对应的index.html
文件,则报错404
修复
在 nginx 配置文件中,在 location 中使用 try_files
,该命令用于根据指定的参数依次检查寻找对应的文件,若所有文件都找不到将会在内部重定向至最后一个参数指定的文件。
location / { try_files $uri $uri/ /index.html;
root /usr/share/nginx/html;
index index.html index.htm;
}
以上是 React:在 Linux 部署后无法直接访问二级路由 的全部内容, 来源链接: utcz.com/z/383625.html