阿里云负载均衡502报错踩坑记录
阿里云负载均衡踩坑记录
问题
最近在部署一个测试项目时,遇到了一个这样的怪事,就是我后端运行的是 Tomcat
,然后我在阿里云的负载均衡上面添加了一个 HTTP 层 代理,并且是走的默认配置,最后进行访问页面显示的是 502。
但是我如果我是配置一个 tcp
层的监听后,发现访问这样是可以正常访问的。这就给我很大疑惑了,是我后端 Tomcat 的问题(因为我 Tomcat 最近调优了),还是 阿里云的负载均衡的问题呢。
问题缘由
经过排查。
问题的原因是: 阿里云的负载均衡在 HTTP和HTTPS
默认开启了健康检查,如果健康检查没有通过的话,后端对应的服务器是接收不到请求的。但是我们这里是没有对健康检查进行详细配置,所以默认健康检查一直失败的。请求也一直到达不了后端。但是阿里云的负载均衡在 TCP 和UDP
默认是没有开启健康检查,所以是可以进行访问的。
问题解决办法
-
关闭健康检查
将健康检查功能关闭。
-
设置健康检查路径
找到我们我们网站可以正常访问的而且不会经常改变的一个路径,然后将它配置在健康检查路径里。健康状态检查就不会出错了。
-
设置状态码
默认的访问路径是
/
,但是,访问这个路径是没有任何数据返回的,所以会报 400 错误,我们可以在健康检查的高级配置中,将正常状态码中的http_4xx
勾选为 正常状态码。(不建议使用)
作者:理想三旬
本人承接各种项目维护和python项目开发, 如果觉得文章写得不错,或者帮助到您了,请点个赞,加个关注哦。运维学习交流群:544692191
本文版权归作者所有,欢迎转载,如果文章有写的不足的地方,或者是写得错误的地方,请你一定要指出,因为这样不光是对我写文章的一种促进,也是一份对后面看此文章的人的责任。谢谢。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧