如何修复WordPress中的HTTP服务不可用503错误

什么原因导致503 Service Unavailable错误?

503 错误代码实际上并不是 WordPress 特有的。事实上,它可能在 WordPress 启动之前就出现了。那么,到底是怎么回事呢?

02_503_service_unavailable_error_in_wordpress-1024x640-1

就像电脑上的应用程序一样,网站的运行需要一定的资源。例如,它需要内存、处理能力和硬盘空间。无论您使用哪种类型的托管服务提供商,情况都是如此。

如果您的服务器在这些资源上开始运行不足,就可能难以处理访问者的请求。最终结果是什么?您的网站将暂时不可用。

有鉴于此,以下是 503 错误信息最常见的原因:

  • 您的网站正在消耗大量资源:例如,这可能是因为插件或主题操作不当,需要更多内存。
  • 动态流量异常大:如果有很多人同时访问你的网站,你的资源消耗速度就会比正常情况下快很多。好消息是,您可以避免缓慢的加载时间,并提前为更高的流量水平做好准备。
  • 你的网站服务器可能遇到了困难:如果你的虚拟主机服务最近升级了软件,你的网站可能没有得到正确的配置或优化。您的虚拟主机可能需要重新启动一个或多个服务器进程,以恢复正常性能水平。

无论根本原因是什么,HTTP 503 错误都不能忽视。除非是主机层面的问题,否则该错误不会自行解决,而且很可能会给您的网站和访客带来重大问题。

503错误变体

503错误可以通过很多方式显示出来。 但是,几乎每个变体都伴随着503代码,因此很容易识别。

以下是您可能遇到的一些变体,具体取决于您的服务器配置和浏览器:

  • 503 Service Unavailable
  • 503 Service Temporarily Unavailable
  • HTTP Server Error 503
  • HTTP Error 503
  • Error 503 Service Unavailable

无论您遇到的报错码是什么样子,都意味着您需要在它对用户产生负面影响之前快速处理。

503错误为何会给网站带来问题

像 HTTP 503 响应这样的服务器端问题不仅令人讨厌,还会对您的业务产生重大影响。

以下是一些需要注意的情况:

  • 您的网站可能会间歇性不可用。
  • 您的访问者可能根本无法查看您的网站。
  • 网站上的特定页面可能不可用,通常是资源最密集的页面。
  • 搜索引擎无法读取您的网站并对其进行排名。
  • 网站的实用程序(如安全扫描)无法正常运行或无法在预定时间运行。

一般来说,503 错误会使您和您的访问者都很难使用您的网站。值得庆幸的是,它是可以修复的!

如何修复WordPress的503错误

由于您经常无法确定在任何给定情况下导致503错误的原因,因此您需要逐步进行故障排除。 以下六个步骤分别涵盖了一个解决方案,旨在解决不同的错误起因。

完成每个步骤后,请花点时间返回到您的网站,看看503错误是否消失。 如果是,您已成功解决了问题。 如果没有,请继续执行该过程的下一步。

1.暂时停用WordPress插件

WordPress中503错误的最常见原因之一是插件兼容性问题。 要确定是否发生了这种情况,您需要禁用所有网站的插件。

由于503错误导致您无法访问WordPress管理后台,因此您需要使用FTP客户端执行此步骤。 如果您没有安装对应的工具,我们建议使用FileZilla

FTP客户端准备就绪后,通过它连接到您的网站并导航到您的WordPress根文件夹。 如果您找不到它,通常称为public_html,html,public,www或您网站的名称。一般路径为/home/wwwroot/www.yourdomain.com/wp-content,如下图所示:

FileZilla-Pkugins.pngo_

WordPress插件FTP目录

打开该文件夹,然后导航到wp-content目录。 在里面,您将看到一个名为plugins的文件夹,其中包含您站点上安装的每个插件(活动和非活动)的各个子目录。

您现在要做的是右键单击插件文件夹,然后将其重命名为其他内容。 我们建议使用plugins.old或plugins.deactivated,以便日后轻松识别。

wordpress-plugins-folder-renamed-sftp.pngo_

WordPress plugins 文件夹重命名

WordPress现在无法找到任何插件。当发生这种情况时,它会自动禁用这些插件。

现在,尝试访问您的WordPress仪表盘。如果503错误消失了,那么你可以假设其中一个插件是罪魁祸首。你所要做的就是将这个有问题的插件揪出来。

返回到wp-content目录,并正确重命名原始插件文件夹。然后,您需要逐个禁用每个插件,直到找到罪魁祸首。

为此,请打开wp-content/plugins目录。在里面,你会找到每个插件的一个文件夹。您要遵循的流程与前面的步骤大致相同:

  • 从第一个文件夹开始,并将其重命名为您喜欢的任何内容。
  • 检查您的网站,看看错误是否消失。
  • 如果不是,请将上一步中的插件文件夹恢复为原始名称。
  • 转到列表中的下一个插件,重复上述步骤。
  • 如果你有很多插件,这个过程可能需要一段时间,但是依次检查每个插件是至关重要的。如果您在任何时候识别出导致错误的插件,您可以将其卸载或用其他工具替换它。

如果在完成这些步骤没有找到解决方案的情况下,您可以继续执行下一步的故障排除。

2. 停用WordPress主题

既然你已经排除了插件为503错误出现的原因,那么现在是时候对你的WordPress当前正在使用主题做同样的事了。 实际上,您的主题也可能会产生兼容性问题。

不幸的是,该过程与上述不同。 如果只是重命名主题文件夹,WordPress将不会恢复为默认主题,最终会出现“主题目录”、“主题名称不存在”之类的错误。或者如果您尝试重命名整个主题目录文件夹, 最终出现“错误:主题目录为空或不存在。 请检查你的安装。”

the-theme-directory-does-not-exist.pngo_

主题目录不存在错误提示

因此,您需要通过登录phpMyAdmin来访问您的WordPress数据库。

单击“wp_options”表,然后单击“搜索”选项卡。 您需要在“option_name”下搜索template

phpmyadmin-wp-options-template-1024x680.jpgo_

数据库wp_options表

在“option_value”列下,您将看到主题的当前名称。 将其更改为默认主题之一,例如“twentynineteen”。

wp-options-template-name.pngo_

wp_options 主题名称

再次检查您的网站,看看是否修复了错误。 如果已修复,即意味着是您的WordPress主题的问题,您可能想尝试重新安装它或恢复到最近的备份。

3. 暂时禁用CDN(内容分发网络)

CDN.jpgo_

不同的CDN服务商,这一块的流程可能会有所不同,具体取决于您使用的CDN。 众所周知,Cloudflare会导致503错误。 如果您找不到暂停选项的选项,请查看您的服务知识库,其中通常包含详细说明。

如果您不使用CDN或发现暂停您的服务对您的问题没有帮助,那么我们需要继续尝试其他方法。 请记住在继续之前重新启用您的CDN。

4. 限制WordPress的 ‘Heartbeat’ API

WordPress Heartbeat是一个内置于WordPress中的API,该平台用于自动保存内容,显示插件通知,提醒你其他人正在处理您尝试访问的文章等等。

就像常规心跳一样,API在后台以高频率工作,因此它不会遗漏任何内容。 如您所想,此API会占用服务器资源。 通常,这不是问题,但在某些情况下,如果您的服务器无法处理负载,可能会导致503错误。

确定Heartbeat API是否是问题的核心的最快方法是暂时禁用它。 为此,请再次通过FTP连接到您的WordPress网站,然后打开当前的主题文件夹并在以下位置查找functions.php文件:

wordpress-theme-functions-file.pngo_

WordPress主题的functions.php文件

右键单击该文件,然后选择“查看/编辑”选项,该选项将使用本地文本编辑器将其打开。 打开后,您需要添加以下代码段:

add_action( 'init', 'stop_heartbeat', 1 );
function stop_heartbeat() {
wp_deregister_script('heartbeat');
}

这三行代码告诉WordPress禁用Heartbeat API。 将更改保存到functions.php文件,关闭它后,再次尝试访问您的网站。

如果503错误消失,那这个API是问题所在。 但是,完全禁用它会使WordPress许多有用的功能不可用。 相反,我们建议您降低WordPress的Heartbeat频率,以免造成问题。

最简单的方法是安装Heartbeat Control插件。启用插件并导航到“设置”>“Heartbeat Control ”。 查找“Modify Heartbeat”选项,并将频率(Frequency)降至尽可能的数字:

Heartbeat-control-frequency.pngo_

Heartbeat Control插件频率设置

将更改保存到您的设置并返回到functions.php文件,要使上述更改生效,您需要删除之前functions.php文件添加的代码并将更改保存到文件中。

在此阶段,如果Heartbeat API出现问题,那么你应该已经解决了503错误。 如果不是,那么是继续尝试不同的方法。

5. 增加服务器资源

如果到目前为止所有修复依然未能解决503错误,那么问题很可能是由于缺少服务器资源。 也就是说,您需要升级您的服务器,看看是否能解决问题。 如果你使用廉价的WordPress主机,它们往往会限制资源导致503报错。

下面我们就来分析一下如何弄清楚这个问题:

  1. 分析当前的资源使用情况:大多数托管服务提供商都提供监控资源使用情况的工具。查看 CPU 使用率、内存消耗量和带宽等指标。如果这些指标持续达到极限,则表明您需要升级。如果可能,在流量大的时候运行这些检查。
  2. 评估你的网站: 一个拥有静态内容的简单博客比一个拥有动态内容、数据库和大量插件的复杂电子商务网站消耗的资源要少。
  3. 考虑一下您的具体资源需求:不要只看 CPU 和内存。还要考虑存储空间(尤其是在有大量媒体的情况下)、数据库性能和带宽。如果您的网站严重依赖数据库查询,请确保任何新的托管计划都能提供优化的数据库性能。

但是,升级服务器是一个重大决定。 聪明的举措是首先联系您的服务器提供商,并与他们讨论503错误,以及您迄今为止尝试解决它的步骤。 支持团队应该能够帮助您解决问题,并建议您是否需要升级服务器。

6. 查看日志及开启WP_DEBUG

您还应该利用错误日志。 如果您的网站服务器使用的LNMP搭建,通过网站服务器/home/wwwlogs路径,可以快速找到网站访问错误日志(一般以nginx_error.log或者error.log命名)。 这可以帮助您快速缩小问题范围,特别是如果它是由您网站上的插件产生的。

check-errors-logs-for-500-internal-server-errors-1-1.pngo_

检查错误日志记录中的503错误

如果您的主机没有日志记录工具,您还可以将以下代码添加到wp-config.php文件以启用日志记录:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );

Debug日志通常位于/wp-content目录中。 在其中,查找名为debug.log的文件并将其打开。

也有一些服务器提供商,可能会有一个名为“logs”的专用文件夹。

wordpress-error-logs-folder-sftp.pngo_

WordPress错误日志文件夹 (SFTP)

查看debug日志可能会让很多站长望而却步,但它并不像您想象的那样难以阅读。 简而言之,日志包含按时间顺序在您的网站上弹出的每个错误。 它显示了导致每个错误的文件,以及涉及哪些特定代码行。

注意:您不会在日志中找到对503错误的直接引用。 即便如此,如果所有其他方法都失败了,它可以通过向您显示导致问题的文件来指向正确的方向。 这样,你就会知道接下来要把重点放在哪里。 正如我们在上一步中提到的,如果您需要进一步的帮助来解决此错误,现在是与您的服务器提供商联系,让他们来协助解决这个问题。又或者找个懂服务器运维的朋友帮忙。

您还可以检查Apache和Nginx中的日志文件,这些文件通常位于此处:

  • Apache: /var/log/apache2/error.log
  • Nginx: /var/log/nginx/error.log

如果由于致命的PHP错误而导致503错误,您还可以尝试启用PHP错误报告。 只需将以下代码添加到出错误的文件中即可。 通常,您可以在Google Chrome DevTools的控制台标签中缩小文件范围。

ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

您可能还需要使用以下内容修改php.ini文件:

display_errors = on

7. 重新安装WordPress

如果关闭插件和重置主题都不起作用,您可能需要重新安装 WordPress。

哦,天哪,听起来真麻烦。

好消息是,只有在 WordPress 核心文件被修改(不应该被修改)或损坏的情况下,您才需要采取这一步骤。这并不像你想象的那么可怕。

WordPress 会将您上传的文件保存在主机服务器上,其余数据则安全地保存在网站数据库中。这意味着您可以重新安装 WordPress 核心文件,而其他文件应该保持不变。

即便如此,您还是要备份文件以防万一

每个好的托管服务都提供备份工具,您可以使用这些工具创建托管账户的当前备份或快照,以便日后恢复。

重新安装WordPress最简单的方法是通过仪表盘。转到控制面板 > 更新 。然后点击重新安装 6.6.2 版(或正在运行的版本):

07_reinstallWordPress 会自行重新安装。完成后,刷新您的网站,看看是否有所改变。

如果您无法访问 WordPress 控制面板,也可以通过 SFTP 手动重新安装 WordPress。首先,您需要直接从 WordPress.org 下载 WordPress

然后,解压 .zip 文件并打开 FileZilla 或其他 SFTP 解决方案。确保客户端已连接到 WordPress 网站。然后,将新下载的 WordPress 文件上传到 WordPress 目录。

新的 WordPress 文件应完全替换旧 WordPress 目录中的所有内容。一般来说,每次进行重大更改后,最好都检查一下网站的性能。

本文内容来源于公开网络,出于传递信息之目的整理发布。原文版权归原作者所有,若涉及侵权请先提供版权后联系我们删除

(0)
WP之家WP之家
上一篇 2025年3月23日
下一篇 2025年3月23日

相关推荐

  • 如何完整卸载WordPress插件

    仅插件库中就有超过50,000个WordPress插件,您很有可能会测试并比较一些不同的插件来完成任务或解决网站上的问题。完成后,您只需通过停用和删除它来卸载它,对吗?错误,这样做的问题在于它会在您的WordPress数据库中留下表和行,随着时间的推移,这会很快增加,这反过

    2025年3月13日
  • WordPress特色图片详解入门教程

    在您的WordPress网站中包含视觉元素是吸引访问者注意力的好方法。此外,与综合文章搭配时,良好的视觉元素可以显着提升内容的信息价值。幸运的是,WordPress具有多种功能,可以将视觉效果整合到网站中,例如包括特色图像。本教程将涵盖您需要了解的有关特色图片的所有信息——它们是什么,为什么要使用它们,以及如何在您的网站上启用它们

    2025年3月13日
  • GSC 和 GA 教程:如何安装和使用谷歌免费工具

    GSC 和 GA 的使用场景和区别 GSC 和 GA 虽然它们都涉及网站数据分析,但它们的功能、使用场景和侧重点有所不同的。 功能对比 Google Search Console (GSC) Google Analytics (GA) 关注点 网站在Google搜索中的表现…

    2025年3月18日
  • 建站初学者基础指南:如何购买域名

    您想知道如何购买域名吗?我们将在本指南中为您分解确切的步骤。无论您是即将创建第一个网站的新企业主、开拓新领域的营销人员,还是只是想要一个满足您爱好的网站,我们都能满足您的需求。如果您以前从未这样做过,注册域可能看起来很棘手。但这出乎意料地容易——毕

    2025年3月13日
  • 如何更改Namecheap名称服务器

    Namecheap是ICANN认可的注册商,已经发布了超过500万个域,并且是WordPress用户中非常受欢迎的选择,因为他们提供廉价的WordPress托管,拥有出色的客户服务,并保持着强烈的反SOPA立场。自2001年以来,他们一直在帮助人们在网上获得自己的名字。Namecheap当您将域指向任意服务器时,您有两个选项,第一

    2025年3月13日
  • 如何使用人工智能翻译WordPress网站

    人工智能(AI)可以成为翻译WordPress网站的高效资产。事实证明,为我们提供ChatGPT(及其替代品)和谷歌翻译的人工智能语言模型在语言翻译方面比以往任何时候都更加有用。您可以使用人工智能工具手动翻译网站内容。此外,WordPress翻译插件也在使用人工智能,使用户更容易

    2025年3月13日
  • 如何为您的WordPress网站添加PWA?

    网页设计是一个不断变化的领域,它基于最新的技术和趋势而发展。PWA或ProgressiveWebApp是最新的技术,可帮助您将桌面网站的功能与移动应用程序相结合。它消除了拥有单独的移动应用程序的需要,并将移动应用程序可用的所有功能提供给桌面网站。因此,WordPress网站所有者向您的读者提供此功能是一个不错的选择。如果您有兴趣,以下是

    2025年3月13日
  • 如何为自己或客户创建WordPress自定义仪表盘

    想在您的网站上创建一个WordPress自定义仪表板吗?您可能想为客户或第三方用户(如自由撰稿人或博主)创建更个性化的体验。或者,您可能正在自己的网站上工作,只是在寻找一种方法来创建更精简的管理体验,以匹配您的工作流程。无论你为什么要创建WordPress自定义仪表板,这篇文章都能帮到

    2025年3月13日