Netlify部署后Proxy配置未生效,API请求出现404错误求助
解决Netlify部署后Proxy失效的问题
问题根源
package.json里的proxy配置仅适用于本地开发服务器(比如Create React App的devServer),Netlify不支持这个配置,所以部署后会出现404错误。
解决方案:使用Netlify重写规则
Netlify通过自定义重写规则实现请求转发,有两种配置方式:
方式1:用_redirects文件
- 在项目的
public目录(React/Vue等框架的静态资源根目录)下创建_redirects文件 - 添加规则:
/admin/* https://example.com/api/admin/:splat 200
- 规则说明:所有以
/admin/开头的请求,会被转发到https://example.com/api/admin/加上原请求的后续路径(:splat代指匹配到的路径部分),200表示保持原请求的状态码,避免跳转。
方式2:用netlify.toml配置文件
- 在项目根目录创建
netlify.toml文件 - 添加配置:
[[redirects]] from = "/admin/*" to = "https://example.com/api/admin/:splat" status = 200 force = true
force = true用于强制触发重写规则,避免缓存导致的规则不生效。
本地验证
可以用Netlify CLI执行netlify dev命令,模拟生产环境的重写逻辑,测试请求转发正常后再部署。
内容的提问来源于stack exchange,提问作者Parth Miroliya
相关产品推荐
相关产品推荐

