You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows Nginx部署Angular+SpringBoot应用后端无法调用的配置问题

问题排查与解决方案

核心问题定位

你当前的Nginx配置仅会转发后缀为.do的请求到后端SpringBoot服务,而前后端分离架构下的SpringBoot接口通常不会统一使用.do后缀,导致前端发起的接口请求无法匹配到反向代理规则,直接被Nginx当做静态资源请求处理,最终返回404。

解决步骤

1. 调整反向代理匹配规则

根据你的后端接口实际路径前缀修改location匹配规则,绝大多数项目后端接口会统一使用/api作为前缀,对应修改两个server块的代理配置即可:

# 4300端口对应管理端应用配置示例
server {
    listen       4300;
    # 适配所有IP/域名访问,避免仅本地可访问的问题
    server_name  _;

    location / {
        root   html/admin;
        index  index.html;
        # 新增:解决Angular前端路由刷新404问题
        try_files $uri $uri/ /index.html;
    }
    # 替换原有的.do后缀匹配规则,^~表示匹配前缀为/api的所有请求
    location ^~ /api/  {
        proxy_pass        http://localhost:8900;
        proxy_set_header  X-Real-IP $remote_addr;
        proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header  Host $http_host;
    }

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   html;
    }
}

# 4200端口对应主应用配置示例
server {
    listen       4200;
    server_name  _;

    location / {
        root   html/main;
        index  index.html;
        try_files $uri $uri/ /index.html;
    }
    location ^~ /api/  {
        proxy_pass        http://localhost:8080;
        proxy_set_header  X-Real-IP $remote_addr;
        proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header  Host $http_host;
    }

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   html;
    }
}

注意:如果你的后端接口没有统一前缀,或者前缀不是/api,请将上述配置中的/api替换为你实际的接口前缀。如果确实需要使用.do后缀匹配,请确认前端所有接口请求的后缀都是.do。

2. 修正前端接口请求路径

Angular项目打包前请将所有接口请求改为相对路径,比如请求/api/user/list,不要写绝对路径http://服务器IP:8900/api/user/list,否则请求不会走Nginx转发,会直接触发跨域限制。

3. 重载Nginx配置

修改完成后,在Nginx安装目录下打开命令行,依次执行以下命令:

  • 验证配置是否正确:nginx -t,返回success再执行下一步
  • 重载配置生效:nginx -s reload

4. 异常排查

如果修改后仍然无法访问,可查看Nginx目录下logs/error.log和logs/access.log日志,定位具体报错原因。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 12:36:03