【Azure App Service】为什么启用 Health Check 后应用服务实例持续显示 Unhealthy?

问题描述

使用App Service的Health Check功能,导致实例状态Unhealthy,重启也不能解决问题。

这是什么情况呢?

问题解答

根据Health Check所配置的path,分别使用http和https进行访问,检查请求的响应是否属于 200 ~ 299 之间。

对于 App Service For Windows 应用,默认情况下,Health Check ping 请求的端口号是 80 (即 http),如果应用代码中会自动执行http 到https的跳转,导致Health Check认为实例不正常,标记为Unhealthy。如果开启了HTTPS Only,则Health Check会通过443端口(https)发送请求。

以.NET Core的代码为例, app.UseHttpsRedirection() 就会自动把http调转到https

可以通过设置App Service只支持HTTPS访问来解决此问题。

参考资料

使用运行状况检查监视应用服务实例 :https://docs.azure.cn/zh-cn/app-service/monitor-instances-health-check?tabs=dotnet


当在复杂的环境中面临问题,格物之道需:浊而静之徐清,安以动之徐生。 云中,恰是如此!

相关推荐
阿白的白日梦6 天前
winget基础管理---更新/修改源为国内源
windows
埃博拉酱10 天前
VS Code Remote SSH 连接 Windows 服务器卡在"下载 VS Code 服务器":prcdn DNS 解析失败的诊断与 BITS 断点续传
windows·ssh·visual studio code
唐宋元明清218811 天前
.NET 本地Db数据库-技术方案选型
windows·c#
加号311 天前
windows系统下mysql多源数据库同步部署
数据库·windows·mysql
tryCbest11 天前
Windows环境下配置pip镜像源
windows·pip
呉師傅11 天前
火狐浏览器报错配置文件缺失如何解决#操作技巧#
运维·网络·windows·电脑
百事牛科技11 天前
保护文档安全:PDF限制功能详解与实操
windows·pdf
一个人旅程~11 天前
如何用命令行把win10/win11设置为长期暂停更新?
linux·windows·经验分享·电脑
一个假的前端男11 天前
[特殊字符] Flutter 安装完整指南 Windows—— 2026最新版
windows·flutter
倚肆11 天前
在 Windows Docker 中安装并配置 Nginx (映射 Windows 端口与路径)
windows·nginx·docker