Render部署React单页应用非首页刷新报NotFound问题求助
解决Render上静态React页面刷新404问题
你遇到的问题核心在于客户端路由与服务器端资源匹配的冲突:React的BrowserRouter是在浏览器端处理路由跳转,但当你刷新非首页(比如/products)时,浏览器会直接向Render服务器发起对应路径的资源请求,而服务器上并没有这些路径的物理文件,因此返回"not found"。
修复步骤
- 在你的React项目的
public目录下,创建一个名为_redirects的文件(无后缀名) - 在该文件中添加以下内容:
/* /index.html 200
- 重新构建你的React应用,并将更新后的代码部署到Render
这行配置会告诉Render服务器:将所有路径的请求都重定向到index.html,让React的客户端路由接管后续的路由逻辑,这样刷新任意页面都能正常加载对应的组件。
内容的提问来源于stack exchange,提问作者Matthew Jalowe Macaranas
相关产品推荐
相关产品推荐

