badgateway如何解决(badgateway502怎么办)

badgateway如何解决(badgateway502怎么办)

一、502 bad gateway nginx什么意思?

通俗的来讲。502 bad gateway代表您所访问的网站出了问题。因为502 Bad Gateway 服务器作为网关或者代理时。是为了完成访问下一个服务器。但该服务器返回了非法的应答。也许是暂时的。也许是的。建议大家稍等一下再从新访问试试。

二、502 bad gateway产生原因?

502 bad gateway产生的大多数原因都是由于连接超时。我们向服务器发送请求。由于服务器当前的链接数太多。导致服务器无法给于正常的响应。才会产生502 bad gateway报错。

一般来说。服务器只是作为网关或代理。以满足客户的要求(如Web浏览器)来访问我们所请求的URL。服务器收到无效的响应从上游服务器访问请行它的要求。这并不意味着上游服务器已关闭(无响应网关/代理)。而是上游服务器和网关/代理不同意协议交换数据。由于互联网协议是固定的。所以。这意味着一个或两个机器已经不正确或没有完全编程。

badgateway如何解决(badgateway502怎么办)

三、固定502错误产生原因?

一般这个问题是由于不良的IP之间的沟通后端计算机。可能包括在Web服务器上的网站您尝试访问。在分析这个问题。您应该清除浏览器缓存再访问。

如果您上网时在您尝试访问的所有网站上都看这个问题。有两种可能

①你的ISP重大设备故障/过载

②有问题的内部互联网连接如您的防火墙无法正常运作。

在种情况下。只有您的ISP可以帮助您。在第二种情况下。你需要解决什么。那是阻止你进入互联网。

如果您只有在部分尝试访问的网站中出现此问题。那很可能是一个问题。即这些网站之一。其设备故障或超载。联系你网站的管理员。

四、502 bad gateway解救方法?

1、刷新

说白了很简单是——刷新(不是一般的刷新哦)

这里所讲的刷新主要是指从服务器下载数据到本地的硬盘浏览器。再从本地硬盘中读取数据到浏览器显示给我们看。通常有两种刷新模式:

①基本刷新:是点击刷新或者使用F5快捷键

基本刷新只是从本地的硬盘重新拿取数据到浏览器。并不重新向服务器发出请求。大部分用户很多时候都是这样刷新的。遇到502报错的没有任何效果。

②从服务器刷新:如果你重新直接点击你想要浏览的网页链接。你会发现刚刚还显示的"502 bad gateway"错误信息页面。重新点击链接后又可以正常浏览。

解决方法:是从服务器上刷新:快捷键 ctrl+F5。这样是重新向服务器发送请求了。如果服务器能正常给予你响应你可以看到页面了。

2、DNS 缓冲问题

这种情况主要是你在没有用vpn的情况下。访问了国外一些被国家防火墙屏蔽的网站如YouTube。facebook之类。

解决办法:这种情况通常在几分钟之内可以访问了。也可以尝试 在cmd窗口运行 ipconfig /flushdns 来刷新DNS缓存

3、dns 被劫持

解决办法:更换DNS。推荐114.114.114.114。还有阿里的公共DNS 如:223.5.5.5、223.6.6.6

五、Nginx 502 bad gateway错误

①查看php-cgi是否在运行

有时候由于网站流量过大或者其它原因。导致php-cgi直接down掉。所以我们得看php-cgi是否在运行。执行以下命令:

ps -A | grep php5-cgi

若没有运行。我们可以手动启动

/etc/init.d/php_cgi start

如果你发现php-cgi不明原因有时候down掉。可以使用下面的脚本临时解决这个问题。添加到cronjob。

if ps aux | grep ‘php5-cgi’ | grep -v grep > /dev/null ; then echo "PHP-cgi is runnning !" else echo "PHP-cgi is down. Starting over…" /etc/init.d/php-fcgi start fi

②fastcgi进程数不够用、php执行时间长的原因

fastcgi进程数可以修改php-fpm.conf中的max_children的数值。高峰时php-cgi耗掉的内存为20M。请根据自己的内存情况计算了。

限制php执行时间可以在php-fpm.conf中的request_terminate_timeout设置。这是为了防止php程序的bug导致php-cgi假死。

③FastCGI执行时间过长

根据实际情况调高以下参数值

fastcgi_connect_timeout 300; fastcgi_send_timeout 300; fastcgi_read_timeout 300;

六、解决nginx出现502的错误

①查看当前的PHP FastCGI进程数是否够用

netstat -anpo | grep "php-cgi" | wc -l

如果实际使用的"FastCGI进程数"接近预设的"FastCGI进程数"。那么。说明"FastCGI进程数"不够用。需要增大。

②部分PHP程序的执行时间超过了Nginx的等待时间。可以适当增加nginx.conf配置文件中FastCGI的timeout时间

例如。系统当前的PHP FastCGI进程数明显超过了预设值的64这个数值。在电信的服务器上查看当前的PHP FastCGI进程数没有高于64这个数值。而且网通线路的活动连接明显高于电信的活动连接。由此可以说明出现nginx不稳定的情况是由于服务器访问负载过大引起的。

总结:php-cgi进程数不够用、php执行时间长、或者是php-cgi进程死掉。都会出现502错误。

更多服务器知识文章推荐:
分享到 :
相关推荐

nrg转iso(nrg转iso文件)

首先,深度技术小编要说明一下。大家不要把nrg看错成rng哦,毕竟rng是pcl很有...

pdg是什么格式(.pdg是什么格式)

可能您在电脑上发现了一个PDG文件却不知道这是做什么用的?这就要扯到超星阅读器了。[...

HostGator如何更改计费周期提前付款

不少用户在HostGator租用虚拟主机。有租用三个月。一年等不同周期。但是有些用户...

linuxtracert命令详解(linuxtracert命令的作用)

WINDOWS平台命令:tracertLINUX平台命令:traceroute[&h...

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注