502 Bad Gateway 常见解决思路
1 最通用的思维:502错误说明服务器没有响应,也就是我们的web服务器没有接到有效的信息导致的。产生错误的原因主要是连接超时,我们向(代理)服务器发送请求由于(代理)服务器当前链接太多,导致服务器方面无法给于正常的响应,产生此类报错。...
502错误定义
502 Bad Gateway服务器作为网关或者代理时,为了完成请求访问下一个服务器,但该服务器返回了非法的应答。简单来说502是报错类型代码bad gateway错误的网关
一、案例1,nginx负载均衡策略中配置了不存在的服务器
这样的话我们一直刷新浏览器,每三个就有一个请求超时时间,时间过长http请求就会被canceled了,当然,这里已经不是超时的问题了,而是注定会请求失败的,但只是请求超时而已,并没有报502错误
我们举个更极端的例子,proxy_pass通常是指定我们配置的负载均衡策略,如下
但我们这里直接给proxy_pass绑定一个不存在的服务器
此时,会有502报错,也就是案例一这两种情况本质上都是一样的,请求不存在的服务器导致请求失败,浏览器没收到响应失败而后报了502错误
案例二
我们这里模拟了一个服务器不存在的情况,但正式环境上会有人配置不存在的服务器作为被代理服务器,平时我们上网遇到了502错误原因应该是①被代理服务器出现故障宕机停机等原因引起②我们向服务器器发送请求 由于服务器当前链接太多,导致服务器方面无法给于正常的响应,产生此类报错
吐槽:
一些运行在Nginx上的网站有时候会出现“502 Bad Gateway”错误,有些时候甚至频繁的出现,Nginx 502错误的原因比较多,是因为在代理模式下后端服务器出现问题引起的。这些错误一般都不是nginx本身的问题,一定要从后端找原因!但nginx把这 些出错都揽在自己身上了:nginx 502 bad gateway!!!
更多推荐
所有评论(0)