如何解决WordPress中的502 Bad Gateway错误?

   日期:2024-12-30    作者:jnshunyuan 移动:http://mip.riyuangf.com/mobile/quote/81396.html
​​技术沙龙 | 6月30日与多位专家探讨技术高速发展下如何应对运维新挑战!

【51CTO.com快译】你有没有在WordPress网站上看到过非常烦人又沮丧的502 Bad Gateway错误?是的,我们都遇到过这个问题。知道502 Bad Gateway错误是啥意思吗?知道如何解决这个问题吗?我们在本文将详细介绍WordPress中的502 Bad Gateway错误,并告诉你如何排查WordPress中的502 Bad Gateway错误。

如何解决WordPress中的502 Bad Gateway错误?

502 Bad Gateway错误的含义是什么?

502 Bad Gateway错误是个HTTP状态代码,意味着互联网上的一台服务器收到了来自另一台服务器的无效响应。用技术性更强的话来说,502 Bad Gateway意味着代理(网关)服务器无法获得来自上游服务器的有效响应或任何响应。

W3.org的官方文档指出,这与以5(5xxx)开头的HTTP状态代码与几台服务器之间通信不畅时发生的错误有关。

如果你在网站上看到502 Bad Gateway错误,表明源服务器向另一台充当网关或代理的服务器发送了无效响应。要经过一番棘手的调查才能找出问题具体出在哪里。不过,你可以遵循几个基本的排查步骤来解决这个问题。

502 Bad Gateway错误的几种形式

由于各种互联网浏览器和各种Web服务器及操作系统,502 Bad Gateway错误有几种不同的形式。下面是502 Bad Gateway错误的几种最常见的形式。

  • ? “Error 502”
  • ?“HTTP Error 502 – Bad Gateway”
  • ?“502 Proxy Error”
  • ?“HTTP 502”
  • ?“502 Service Temporarily Overloaded”(“502服务暂时过载”)
  • ?“502 Server Error: The server encountered a temporary error and could not complete your request”(“502服务器错误:服务器暂时遇到了错误,无法完成你的请求。”)
  • ?“502. That’s an error. The server encountered a temporary error and could not complete your request. Please try again in 30 seconds. That’s all we know.”(“502。这是错误。服务器暂时遇到了错误,无法完成你的请求。请在30秒后重试。这是我们所知道的。”)
  • ?屏幕一片空白

如何解决502 Bad Gateway错误(3种可能的办法)

502 Bad Gateway错误通常是网络或服务器出了问题,但也可能是客户端问题。于是我们会排查服务器端的错误,还会排查客户端的错误。下面是检查和解决问题的几个步骤。

1. 检查服务器

如果你看到图中所示的错误,很可能问题出在Web服务器。

不妨检查一下Web服务器配置,本例中服务器运行Nginx。WordPress在PHP和MySQL上运行。所以在Nginx中,我们需要检查PHP文件是如何处理的。在Nginx服务器部分找到“location ~ .php$”。

  • ssh@your_ip -p7022  
  • 502 Bad Gateway错误

    从图中所示的Nginx配置来看,PHP文件由在端口9000运行的fastcgi来处理。

    不妨检查端口上运行的是什么。

  • netstat -pltn | grep 9000 
  • 如果你在执行该命令后没看到任何结果,表明进程已终结。这是你看到502 Bad Gateway错误的原因。

    在最新版CentOS和Ubuntu中,可以调用此命令来查看应该从哪里运行进程:

  • systemctl list-unit-files | grep fpm  
  • 502 Bad Gateway错误

    执行该命令来运行服务:

  • systemctl start php7.0-fpm 
  • 现在,进入到Web浏览器,检查你的网站。

    如果你使用CloudFlare,看到如下图所示的502 Bad Gateway错误,你的Web服务器极有可能是宕机了。可以尝试重启Apache或Nginx,这取决于你使用哪种Web服务器。

    cloudflare中的502 Bad Gateway错误

    2. 清除缓存

    如果已采用第一个办法,但还是看到502 Bad Gateway错误,那么你的Web浏览器仍依赖缓存。我们得告诉Web浏览器从网站加载最新版本。为此,我们可以按下键盘上的Ctrl + F5(Windows/Linux)、工具栏中的Shift + Reload按钮(Safari浏览器),或者CMD + Shift + R(针对Mac用户的Chrome和Firefox)。

    3. 禁用CDN

    如果你在使用CloudFlare,可以尝试暂时禁用CDN。

    502 Bad Gateway错误:禁用CDN

    4. 检查脚本

    如前所述,502 Bad Gateway错误是由于Web服务器出了问题。比如说,有时候,php进程因使用高端内存(high memory)而被服务器终结。这个终结过程会在一段时间后终止请求,这也会导致网站宕机。但是网站通常会自动可以访问,因为这时PHP进程重新生成。为了永久解决这个问题,要检查哪个php脚本在使用高端内存。

    5. 检查插件和主题

    排查哪个插件导致错误很简单。即使我们无法访问WordPress后端,也可以通过重命名插件目录,一次性禁用所有插件。为此,使用SSH连接到你的服务器。请注意:你也可以使用FTP客户软件(比如FileZilla)来执行此操作。

    解决502 Bad Gateway错误

    你可以逐个启用插件,按照以下步骤操作:

    进入到wp-content目录,我们可以看到没有插件目录,我们已对其重命名。

    不妨创建一个插件目录,并将一个插件移过去。这会自动启用该插件。

    解决wordpress中的502 Bad Gateway错误

    有时,排查WordPress错误比我们想象的要容易,但有时也可能很难解决。

    当然,如果你的WordPress VPS由服务提供商托管,无需为服务器操心,提供商的技术支持团队会马上帮你调查和解决这个502 Bad Gateway问题。他们随时待命,能够解答任何问题或要求。

    原文标题:How to Fix the 502 Bad Gateway Error in WordPress

    【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

    【编辑推荐】

  • WordPress 4.9“Tipton”正式版发布
  • 前端性能优化 —— 移动端浏览器优化策略
  • 如何修复WordPress中的HTTP错误
  • W3Techs CMS 流行度统计:WordPress 一枝独秀
  • 别再让你的Web页面在用户浏览器端裸奔
  • 【责任编辑:

    庞桂玉

    TEL:(010)68476606】


    特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。


    举报收藏 0评论 0
    0相关评论
    相关最新动态
    推荐最新动态
    点击排行
    {
    网站首页  |  关于我们  |  联系方式  |  使用协议  |  隐私政策  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号