WordPress网站URL接见遭遇报错是件让站长头痛的事情。一些通例的报错网上都可以找到对应的缘由及对应解决设施。遗憾的是,503错误让人看起来有点疑心,不会反馈太多信息,让众多站长无从下手。
此文将会有助于明白WordPress中503错误的最常见缘故原由。 之后,在对错误进行故障清扫时,您需要有条不紊,执行几个步骤才气找到基本缘故原由。
在本文中,我们将先容503错误是什么以及它通常如何显示。 然后,我们将通过六个步骤以对其进行故障清扫。
关于503 Error?
遇到503错误时,示意相关服务器不能用。 这可能是由于服务器忙碌了,或者它处于维护状态。 与其他类似的错误代码差异,503示意您的网站已联机并正在运行,但现在无法接见。
令人烦恼的是,这个特殊的错误,它险些没有给你任何信息。 大多数情形下,它只显示“服务暂时不能用”新闻。就好好比打电话给餐馆,他们只是告诉你他们现在不接客,但拒绝告诉你什么时刻他们会再次接单。
若是幸运的话,503错误代码是由于您的WordPress网站正在维护中。 当您更新插件,主题或焦点软件时,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插件FTP目录
打开该文件夹,然后导航到wp-content目录。 在内里,您将看到一个名为plugins的文件夹,其中包罗您站点上安装的每个插件(流动和非流动)的各个子目录。
您现在要做的是右键单击插件文件夹,然后将其重命名为其他内容。 我们建议使用plugins.old或plugins.deactivated,以便日后轻松识别。
WordPress plugins 文件夹重命名
WordPress现在无法找到任何插件。当发生这种情形时,它会自动禁用这些插件。
现在,实验接见您的WordPress仪表板。若是503错误消逝了,那么你可以假设其中一个插件是罪魁罪魁。你所要做的就是将这个有问题的插件揪出来。
返回到wp-content目录,并准确重命名原始插件文件夹。然后,您需要逐个禁用每个插件,直到找到罪魁罪魁。
为此,请打开wp-content/plugins目录。在内里,你会找到每个插件的一个文件夹。您要遵照的流程与前面的步骤大致相同:
- 从第一个文件夹最先,并将其重命名为您喜欢的任何内容。
- 检查您的网站,看看错误是否消逝。
- 若是不是,请将上一步中的插件文件夹恢复为原始名称。
- 转到列表中的下一个插件,重复上述步骤。
- 若是你有许多插件,这个历程可能需要一段时间,然则依次检查每个插件是至关主要的。若是您在任何时刻识别出导致错误的插件,您可以将其卸载或用其他工具替换它。
若是在完成这些步骤没有找到解决方案的情形下,您可以继续执行下一步的故障清扫。
2. 停用WordPress主题
既然你已经清扫了插件为503错误泛起的缘故原由,那么现在是时刻对你的WordPress当前正在使用主题做同样的事了。 现实上,您的主题也可能会发生兼容性问题。
不幸的是,该历程与上述差异。 若是只是重命名主题文件夹,WordPress将不会恢复为默认主题,最终会泛起“主问题录”、“主题名称不存在”之类的错误。或者若是您实验重命名整个主问题录文件夹, 最终泛起“错误:主问题录为空或不存在。 请检查你的安装。”
主问题录不存在错误提醒
因此,您需要通过登录phpMyAdmin来接见您的WordPress数据库。
单击“wp_options”表,然后单击“搜索”选项卡。 您需要在“option_name”下搜索template。
数据库wp_options表
在“option_value”列下,您将看到主题的当前名称。 将其更改为默认主题之一,例如“twentynineteen”。
WordPress网站优化插件Autoptimize设置教程
wp_options 主题名称
再次检查您的网站,看看是否修复了错误。 若是已修复,即意味着是您的WordPress主题的问题,您可能想实验重新安装它或恢复到最近的备份。
3. 暂时禁用CDN(内容分发网络)
差其余CDN服务商,这一块的流程可能会有所差异,详细取决于您使用的CDN。 众所周知,Cloudflare会导致503错误。 若是您找不到暂停选项的选项,请查看您的服务知识库,其中通常包罗详细说明。
若是您不使用CDN或发现暂停您的服务对您的问题没有辅助,那么我们需要继续实验其他方式。 请记着在继续之前重新启用您的CDN。
4. 限制WordPress的 ‘Heartbeat’ API
WordPress Heartbeat是一个内置于WordPress中的API,该平台用于自动保留内容,显示插件通知,提醒你其他人正在处置您实验接见的帖子等等。
就像通例心跳一样,API在后台以高频率事情,因此它不会遗漏任何内容。 如您所想,此API会占用服务器资源。 通常,这不是问题,但在某些情形下,若是您的服务器无法处置负载,可能会导致503错误。
确定Heartbeat API是否是问题的焦点的最快方式是暂时禁用它。 为此,请再次通过FTP毗邻到您的WordPress网站,然后打开当前的主题文件夹并在以下位置查找functions.php文件:
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插件频率设置
将更改保留到您的设置并返回到functions.php文件,要使上述更改生效,您需要删除之前functions.php文件添加的代码并将更改保留到文件中。
在此阶段,若是Heartbeat API泛起问题,那么你应该已经解决了503错误。 若是不是,那么是继续实验差其余方式。
5. 增添服务器资源
若是到现在为止所有修复依然未能解决503错误,那么问题很可能是由于缺少服务器资源。 也就是说,您需要升级您的服务器,看看是否能解决问题。 若是你使用廉价的WordPress主机,它们往往会限制资源导致503报错。
然则,升级服务器是一个重大决议。 伶俐的行动是首先联系您的服务器提供商,并与他们讨论503错误,以及您迄今为止实验解决它的步骤。 支持团队应该能够辅助您解决问题,并建议您是否需要升级服务器。
6. 查看日志及开启WP_DEBUG
您还应该使用错误日志。 若是您的网站服务器使用的LNMP搭建,通过网站服务器/home/wwwlogs路径,可以快速找到网站接见错误日志(一样平常以nginx_error.log或者error.log命名)。 这可以辅助您快速缩小问题局限,稀奇是若是它是由您网站上的插件发生的。
检查错误日志纪录中的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错误日志文件夹 (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错误? 在下面的留言谈论与我们分享您的履历!
如何实现采用高效的缓存策略提供静态资源