架构师_程序员

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 219|回复: 0

阿里云 SLB 负载均衡 502 Bad Gateway 网关错误解决办法

[复制链接]
跳转到指定楼层
楼主
发表于 2019-8-13 14:42:43
zu
使用阿里云 SLB 负载均衡已经有5年多的时间了,从最初阿里云内测的时候就开始用,在部署好以后,出现以下错误:



502 Bad Gateway

错误是间歇性的发生,一开始启动后,并没有出现502网关错误,在等待一分钟后,就会出现该错误,后端 Windows 服务器 IIS 容器 ASP.NET 网站。

从服务器点击iis打开浏览器,是可以正常浏览的,SLB 负载均衡间接性出现问题,我还是第一次遇到。

解决方案:

问题主要是出现在“健康检查方法”设置,默认设置如下:



后端健康检查是采用head方式请求,如果相应状态码返回2xx、3xx,即视为后端服务器正常。

我们尝试用三种方式进行head方式请求,首先,我将本地的项目直接运行起来,本地进行测试。

测试一:

使用postman测试,如下图:



返回404 Not Found 状态,其实,在这里,我们就知道是什么原因造成的了。

测试二:

使用curl测试,如下图:

windows(64位)下使用curl命令附工具下载
https://www.itsvse.com/thread-3409-1-1.html
(出处: 架构师_程序员)
C:\Users\itsvse>curl -i -X HEAD http://localhost:60155/
Warning: Setting custom HTTP method to HEAD with -X/--request may not work the
Warning: way you want. Consider using -I/--head instead.
HTTP/1.1 404 Not Found
Cache-Control: private
Content-Length: 4432
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/10.0
X-SourceFiles: =?UTF-8?B?QzpccHJvamVjdFxteVxDb2RlU2hhcmluZ1xDb2RlU2hhcmluZy5XZWJVSVxIb21lXEVycm9yNDA0?=
X-Powered-By: ASP.NET
Date: Tue, 13 Aug 2019 03:53:04 GMT

curl: (56) Recv failure: Connection was reset



同样返回的是404状态码。

测试三:

这次,我们直接在正式服务器上面测试,通过powershell下的curl测试,如下图:

  1. curl http://127.0.0.1:81 -method head
复制代码


可以看到同一个页面通过head方式请求,有时候返回404状态码,有时候返回200状态码,从而印证了我们一开始遇到的间歇性的502错误。

具体是什么原因造成asp.net间歇性返回404和200状态码呢?

由于我们首页有缓存,在用户使用get方式请求首页的时候,页面会缓存成功,之后的head、get会一直返回缓存的页面,同时也会返回200响应码,如果,缓存过期之后,没有用户进行get方式请求,只通过命令进行head方式请求,就会出现404错误。估计这种问题,很少人会遇到吧。

解决方案就是在健康检查方式,勾选所有的响应状态码,如下图:



如何排查七层监听(HTTP/HTTPS)健康检查异常:https://help.aliyun.com/document_detail/98226.html?spm=5176.11783185.0.0.77a11eb9WeOcHR

(完)




上一篇:关于亚马逊 AWS CloudFront 使用注意事项
下一篇:在深圳的第76天
帖子永久地址: 

架构师_程序员 - 论坛版权1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关
2、本站所有主题由该帖子作者发表,该帖子作者与架构师_程序员享有帖子相关版权
3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和架构师_程序员的同意
4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
7、架构师_程序员管理员和版主有权不事先通知发贴者而删除本文

码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。

Mail To:help@itsvse.com

QQ|Archiver|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2019-9-19 10:52

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表