You need to enable JavaScript to run this app. 为什么Nuxt.js的Axios代理配置在生产服务器上不生效?
优惠活动
大模型
产品
解决方案
定价
更多

为什么Nuxt.js的Axios代理配置在生产服务器上不生效?

问题核心原因

@nuxtjs/proxy 是Nuxt开发服务器的专属中间件,仅在本地dev运行模式下生效,生产环境打包部署后,这套代理逻辑不会被加载,这就是你本地正常、线上代理失效的根本原因,生产环境的路径改写需求需要直接在Nginx侧配置实现。

你的Nginx配置确实是故障直接诱因

你当前的Nginx配置中,location /api 规则直接把所有/api前缀的请求转给Laravel处理,没有做你需要的路径改写逻辑,所以请求不会自动跳到/api/v1前缀的路径下。

解决步骤

  1. Nuxt侧的代理配置可以保留,不影响本地开发使用,无需额外修改
  2. 修改Nginx配置中的location /api块,添加路径重写规则:
location /api {
    # 把所有 /api/xxx 的请求重写到 /api/v1/xxx
    rewrite ^/api/(.*)$ /api/v1/$1 break;
    try_files $uri $uri/ /index.php?$query_string;
}
  1. 保存配置后执行nginx -t验证语法是否正确,确认无误后执行nginx -s reload重载配置即可生效。

补充说明

如果后续你需要调整代理规则,生产环境都直接修改Nginx的重写逻辑即可,不需要再改动Nuxt的代理配置。

内容的提问来源于stack exchange,提问作者user3540430

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 23:45:02