最新公告
  • 欢迎您光临IO源码网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入我们
  • 如何修复WordPress中的HTTP服务不可用503错误

    WordPress网站URL访问遭遇报错是件让站长头痛的事情。一些常规的报错网上都可以找到对应的缘由及对应解决办法。遗憾的是,503错误让人看起来有点困惑,不会反馈太多信息,让众多站长无从下手。

    此文将会有助于理解WordPress中503错误的最常见原因。 之后,在对错误进行故障排除时,您需要有条不紊,执行几个步骤才能找到根本原因。

    在本文中,我们将介绍503错误是什么以及它通常如何显示。 然后,我们将通过六个步骤以对其进行故障排除。

    关于503 Error?

    遇到503错误时,表示相关服务器不可用。 这可能是因为服务器繁忙了,或者它处于维护状态。 与其他类似的错误代码不同,503表示您的网站已联机并正在运行,但目前无法访问。

    令人烦恼的是,这个特殊的错误,它几乎没有给你任何信息。 大多数情况下,它只显示“服务暂时不可用”消息。就好比如打电话给餐馆,他们只是告诉你他们目前不接客,但拒绝告诉你什么时候他们会再次接单。

    如果幸运的话,503错误代码是因为您的WordPress网站正在维护中。 当您更新插件,主题或核心软件时,WordPress会短时间内将您的网站设置为维护模式:

    503-error-code-wordpress

    WordPress维护模式

    通常,此超时非常简短,没有人会注意到它。 但是,503错误仍然可能存在其他情况,您将面临更大的问题需要处理。 毕竟,用户不仅无法访问您的网站,而且您也将失去对WordPress管理后台的访问权限。 这意味着您无法以任何方式更新您的网站,并且为了进行故障排除,您需要深入了解其文件。

    503错误变体

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

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

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

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

    如何修复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,如下图所示:

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

    WordPress插件FTP目录

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

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

    wordpress-plugins-folder-renamed-sftp

    WordPress plugins 文件夹重命名

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

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

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

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

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

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

    2. 停用WordPress主题

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

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

    the-theme-directory-does-not-exist

    主题目录不存在错误提示

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

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

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

    数据库wp_options表

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

    wp-options-template-name

    wp_options 主题名称

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

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

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

    不同的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

    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

    Heartbeat Control插件频率设置

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

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

    5. 增加服务器资源

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

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

    6. 查看日志及开启WP_DEBUG

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

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

    检查错误日志记录中的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

    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

    小结

    一般情况下,只有当您将网站置于维护模式时,才会显示503错误。 但是,如果它不是这个原因,那么你将不得不卷起袖子进行故障排除。

    要了解503错误的根本原因,您需要按照以下步骤进行修复:

    • 暂时停用WordPress插件。
    • 停用正在使用的WordPress主题。
    • 禁用网站的CDN服务。
    • 限制WordPress的Heartbeat API。
    • 增加服务器资源。
    • 查看日志并启用WP_DEBUG。

    你有没有遇到过WordPress中的503错误? 在下面的留言评论与我们分享您的经验!

    1. 本站所有资源来源于用户上传和网络,因此不包含技术服务请大家谅解!如有侵权请邮件联系客服!384324621@qq.com
    2. 本站不保证所提供下载的资源的准确性、安全性和完整性,资源仅供下载学习之用!如有链接无法下载、失效或广告,请联系客服处理,有奖励!
    3. 您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容资源!如用于商业或者非法用途,与本站无关,一切后果请用户自负!
    4. 如果您也有好的资源或教程,您可以投稿发布,成功分享后有★币奖励和额外收入!

    IO 源码网 » 如何修复WordPress中的HTTP服务不可用503错误

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    IO源码吧
    一个高级程序员模板开发平台

    发表评论

    • 158会员总数(位)
    • 12111资源总数(个)
    • 92本周发布(个)
    • 0 今日发布(个)
    • 538稳定运行(天)

    提供最优质的资源集合

    立即查看 了解详情