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

Angular 14生产环境调用双API异常:一个成功另一个返回404 Not Found

问题描述
  • 拥有两个API子域名,分别部署在不同VNet中,使用相同证书
  • 一个后端基于PHP开发部署在Apache服务器,另一个基于.NET 6开发部署在IIS 10
  • Angular 14应用调用两个API时,一个返回成功状态,另一个在生产环境抛出404错误;本地环境下两个API均可正常响应
排查建议

网络与VNet配置检查

  • 确认生产环境中Angular应用所在网络可访问.NET 6 API对应的VNet,检查VNet peering、防火墙规则、网络安全组(NSG)是否允许流量通过
  • 用nslookup或dig命令验证API子域名在生产环境的DNS解析是否正确,确认域名指向的IP为目标服务器地址
  • 检查.NET 6 API的端口(默认HTTPS为443)在生产环境是否开放,确认防火墙未拦截该端口

IIS与.NET 6配置检查

  • 检查IIS中.NET 6 API站点的绑定配置:确认域名绑定正确、证书安装关联正常、端口设置无误
  • 查看IIS日志(默认路径C:\inetpub\logs\LogFiles),定位404请求的详细记录,确认请求URL路径是否与API路由匹配
  • 验证.NET 6 API的路由配置:检查Program.cs中的路由定义,确保生产环境的路由前缀、控制器路由与本地环境一致
  • 检查.NET 6应用的发布配置:确认发布包含所有必要文件,web.config配置正确,ASPNETCORE_ENVIRONMENT等环境变量符合生产环境要求

证书与HTTPS检查

  • 确认.NET 6 API所在IIS的证书安装正确,检查证书有效期、域名匹配度,避免因证书问题导致请求拦截重定向引发404
  • 核对Angular应用中调用.NET 6 API的请求URL,确认HTTPS协议、域名、路径无拼写错误,注意路径大小写(IIS默认不敏感,但路由配置可能有特殊设置)

跨域(CORS)检查

  • 确认.NET 6 API的CORS配置允许Angular应用的生产域名访问,检查Program.cs中的AddCors和UseCors配置,避免CORS拦截导致的伪装404(部分场景下CORS错误会被前端误报为404)

内容的提问来源于stack exchange,提问作者M. Monjurul Haque shah

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 09:52:07