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

AKS从1.23升级至1.25/1.26后WebSocket异常问题咨询

AKS升级后Vue应用WebSocket连接失败的原因分析

核心问题

AKS升级到1.25/1.26后,Webpack Dev Server生成的WebSocket连接地址从外部域名变成了Pod内部IP,导致HTTPS页面发起不安全的ws://请求,被浏览器的混合内容策略拦截,最终页面无法加载。

具体触发因素

  1. AKS 1.25+的Ingress控制器变化
    AKS 1.25及以上版本默认升级了Ingress NGINX控制器至v1.0+,同时Kubernetes 1.25调整了Ingress请求头的转发逻辑。新版本控制器未能正确传递外部域名的Host或X-Forwarded-Host头,导致Webpack Dev Server无法获取外部域名,转而使用Pod内部IP作为WebSocket连接的主机地址。
  2. Webpack Dev Server配置缺失
    应用未显式配置Webpack Dev Server的public参数(Vue项目对应vue.config.js中的devServer.public),依赖自动推断连接地址。AKS 1.23的旧版Ingress逻辑能让Webpack正确推断外部域名,但1.25+的环境变化打破了这一推断逻辑。
  3. AKS 1.24的过渡兼容性
    AKS 1.24使用的Ingress控制器版本仍保留旧的请求转发逻辑,Webpack Dev Server能正常获取外部域名,因此应用运行正常。

关键验证点

  • 检查vue.config.js或Webpack配置,确认是否设置了devServer.public为你的外部域名(例如DOMAIN_NAME:8081)。
  • 对比不同AKS版本集群中Ingress控制器的版本差异。
  • 在Pod内查看请求的Host和X-Forwarded-Host头,确认Webpack能否获取正确的外部域名。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 19:27:22