如何在WordPress 网站中调试PHP 错误?

WordPress 是当今市场上最流行的内容管理系统(CMS) 之一。它建立在各种开发语言之上,以PHP 为骨干。每当用户访问WordPress 站点时,PHP 代码都会由安装在服务器(Apache 或Nginx)上的PHP 模块编译。这实质上意味着在处理用户请求的过程中可能会出现很多PHP 错误。如果是这样,则表明PHP 代码存在问题。

因此,在寻找解决方案之前,您必须了解如何检查这些PHP 错误的基本知识。在本文中,我们将解释如何在WordPress 站点中调试PHP 错误以及启用错误日志记录。

WordPress 中的PHP 错误

PHP 错误可能是破坏您的网站的警告或致命错误。这些问题可能由于以下不同原因而发生。

  • 在语法中省略分号
  • 调用错误的变量
  • 与另一个插件甚至服务器参数冲突
  • 与最新PHP 版本不兼容的插件或主题

当您在浏览器前端或管理面板中看到错误时,不要惊慌。由于您必须经常更新核心WordPress、PHP 版本、主题和插件,因此由于兼容性和其他原因而出现错误是很常见的。

为什么要监控PHP 错误?

密切关注您网站的PHP 错误在两个主要方面至关重要。

  • 安全性——PHP 错误中的信息可能会使您的网站遭受恶意攻击。因此,了解和修复错误是维护安全网站的必要任务。
  • 优化– PHP 错误会降低您网站的速度,如果这些问题未被注意到,它们会降低性能并浪费带宽。

尽管许多安装默认情况下不会针对这些问题提供错误通知,但PHP 问题经常会在没有警告的情况下意外发生。即使您网站上的微小修改也可能触发它们对您的服务器设置、数据库设置或WordPress 文件的影响。

事实仍然存在,即使您的网站表面上看起来运行正常,但它可能正遭受需要立即解决的未被注意到的PHP 问题。正因为如此,WordPress 管理员应该密切关注PHP 错误。

调试WordPress 中的PHP 错误

本文将研究如何使用两种方式在WordPress 中调试PHP 错误。

  1. 使用代码手动调试PHP 错误。
  2. 使用插件调试PHP 错误。

1.用代码手动调试PHP错误

如果您是开发人员或对一种或两种编程语言有很好的掌握,这种方法会容易得多。它可能不是最快的,因为您可能会写下几行代码,但即使这样也让它变得更有趣。对于这篇特定的帖子,我们将在Visual Studio Code 上编辑代码,因为该站点本地托管在LAMPP 上。如果您的网站已经投入生产,您可以通过文件管理器应用程序或使用FTP 编辑代码。

相关问题  如何在iPhone、iPad 上将照片转换为PDF

我们将研究三个主要的PHP 常量:

WP_DEBUG 启用调试错误
WP_DEBUG_DISPLAY 在浏览器前端显示错误
WP_DEBUG_LOG 在日志文件中启用错误记录

WP_DEBUG 和WP_DEBUG_DISPLAY

在我们的测试站点中,现在WordPress 站点上没有显示PHP 错误,如下图所示。这是因为默认情况下,WordPress 通过将WP_DEBUG 参数设置为“false”来防止在浏览器中显示错误。

未显示错误
未显示错误

要将WordPress 调试设置为true,请转到站点的根安装文件夹并找到wp-config.php 文件。编辑该文件并检查它是否包含以下行。

define( 'WP_DEBUG', false );

它应该如下图所示。

在WordPress 中启用调试
在WordPress 中启用调试

如果行在那里,只需将WP_DEBUG 值更改为true。否则,您可以插入一个WP_DEBUG 值为true 的新行。此外,添加以下行以启用在浏览器中显示PHP 错误。

define( 'WP_DEBUG_DISPLAY', true );

启用这两个参数后,它应该如下图所示。

启用错误显示
启用错误显示

保存文件以应用更改并上传回您的服务器。现在,当我们重新加载网站时,我们可以看到屏幕上显示的错误。如您所见,这是一条警告消息,提示主题存在语法问题,可能会在未来的PHP 版本中导致错误。

请注意,某些PHP 错误出现在localhost 环境中,不适用于实时站点。另外,确保在wp-config.php 文件中添加代码,就在“/* 就是这样,停止编辑!快乐出版。*/”。

浏览器中显示的站点PHP 错误
浏览器中显示的站点PHP 错误

不幸的是,这些错误出现在不太专业的浏览器上。此外,一些错误可能会揭示网站上存在的漏洞和安全漏洞。一个可靠的解决方案是创建一个日志文件,我们将在其中转储所有这些错误。

相关问题  如何禁用uTorrent 和BitTorrent 中的广告?

但首先,请记住通过编辑WP_DEBUG_DISPLAY 值来关闭错误显示,如下图所示。将WP_DEBUG 值保留为true,以便我们能够记录错误。

禁用错误显示
禁用错误显示

使用WP_DEBUG_LOG 记录错误

以下是您可以创建WordPress 错误日志文件的一些情况:

  • 您的整个网站出现故障
  • 尝试打开网站时注意空白屏幕
  • 网站性能出现问题
  • 出现带有HTTP 状态代码401、404 或500 的警告
  • 如果插件或主题无法正常运行。您还可以考虑创建错误日志以获取有关问题的更多详细信息。

要将WordPress 错误转储到日志文件,请打开wp-config.php 文件并查找以下行。

define( 'WP_DEBUG_LOG', true );

如果它不存在,您可以插入一个新行。有时该行也会被注释,并确保删除注释并将WP_DEBUG_LOG 值设置为true,如下图所示。

启用调试错误日志
启用调试错误日志

保存文件并上传回您的服务器。现在,在浏览器上重新加载网站。WordPress 将在wp-content 目录中创建一个名为debug.log 的日志文件,它将转储您网站上的所有PHP 错误。

查看调试错误日志
查看调试错误日志

当我们打开文件时,您可以看到它包含我们网站上显示的所有错误。

站点错误日志
站点错误日志

这可以派上用场,尤其是当您在实时环境中工作并且您不希望用户在他们的屏幕上看到错误时。然后,您可以在不影响真实用户的情况下在后台检查并纠正这些错误。

2. 使用插件调试PHP 错误

虽然上述方法很简单,但您需要从主机帐户访问服务器或使用FTP 远程访问服务器来编辑wp-config.php。幸运的是,您可以使用不同类型的插件在WordPress 中调试PHP 错误。这里我们将讨论以下两个插件:

  1. WP调试插件
  2. 查询监视器插件

使用WP 调试插件调试PHP 错误

WP 调试插件是一个免费的WordPress 插件,它启动WordPress 调试模式并启用错误日志记录。激活后,此插件会在wp-config.php 中设置调试常量,并在停用时将其删除。如果有任何问题,则会引发PHP 异常。这些常数包括:

define( 'WP_DEBUG'; true );define( 'WP_DEBUG_LOG'; true );define( 'SCRIPT_DEBUG'; true );define( 'SAVEQUERIES'; true );

当插件被停用时,会尽一切努力恢复预先存在的常量的状态。虽然,当插件再次激活时,默认设置和所有保存的设置都会恢复。该插件还带有一个调试部分,您可以在其中配置调试常量。开始;

  • 转到WordPress 仪表板并单击“工具”菜单
  • 单击“WP 调试”子菜单。
  • 向下滚动并选择要在站点上应用的调试常量。
  • 单击“保存更改”按钮以应用更改,如下图所示。
WP 调试插件设置
WP 调试插件设置

使用查询监视器插件调试PHP 错误

查询监视器是一个免费的WordPress 插件,可帮助网络管理员分析前端和后端页面查询。它还会提醒您注意其众多用途中的重大PHP 错误。安装并激活后,您将在顶部管理栏中看到一个新项目。当它识别出严重(PHP) 问题时,工具栏将显示为红色,如下图所示。

查询监视器顶栏
查询监视器顶栏

此工具栏包含一个下拉菜单,其中包含多个可用于管理WordPress 站点的选项。但是,在这篇文章中,我们将只关注PHP 错误。将鼠标悬停在新引入的查询监视器工具栏上,然后单击PHP 错误。这将打开一个窗口,显示WordPress 网站上的所有PHP 错误,如下图所示。

查询监视器错误
查询监视器错误

此外,您可以设置一个身份验证cookie,允许您在未登录或以其他用户身份登录时查看查询监视器输出。为此,请按照以下步骤操作:

  • 导航到WordPress 仪表板上的“插件”部分
  • 单击查询监视器插件下方的“设置”选项
  • 开发人员控制台窗口将在您的管理面板上弹出
  • 点击“设置身份验证cookie”。
设置身份验证Cookie
设置身份验证Cookie

结论

这篇文章为您提供了可用于在WordPress 网站上调试PHP 错误的各种方法。如果您精通编程,那么您绝对应该尝试手动方式直接与您的WordPress 代码交互。但是,在编辑文件时要小心,不要再产生任何错误。如果您想要一种快速而直接的方法,这些插件将非常有用。

分享这篇文章

发表评论