禁用WordPress致命错误处理

禁用WordPress致命错误处理

WordPress 5.2内置了一个新功能,当检测到插件或主题发生错误时,自动发送邮件通知网站管理员,即使在后端完全无法访问的情况下,管理员仍然有机会登录并对此问题采取措施。错误提示如下:因为国内部分主机的原因,很少有站长会收到错误提示邮件,最后还...

WordPress 5.2内置了一个新功能,当检测到插件或主题发生错误时,自动发送邮件通知网站管理员,即使在后端完全无法访问的情况下,管理员仍然有机会登录并对此问题采取措施。

错误提示如下:

因为国内部分主机的原因,很少有站长会收到错误提示邮件,最后还是需要通过WP_DEBUG来定位处理错误!

首先,我们先解决WordPress致命错误,处理的禁用再说下如何开启WP_DEBUG并且开启错误日志!

方法一

打开WordPress配置文件wp-config.php添加

define( 'WP_DISABLE_FATAL_ERROR_HANDLER', true );

方法二

将下面代码添加到当前主题函数模板 functions.php 中:

dadd_filter( 'wp_fatal_error_handler_enabled', '__return_false' );

开启WP_DEBUG

WordPress 出现了问题,学会 Debug 是我们 WordPress 开发者必须掌握的技能。WordPress 为此也提供了 WP_DEBUG WP_DEBUG_DISPLAY 和 WP_DEBUG_LOG 这三个常量让你应对各种情况。下面讲经常经常使用到的方法:

1. 如果是前台和后台空白,并且没有显示任何错误。

打开 wp-config.php 文件,将原来的 WP_Debug 设置改成如下设置:

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

保存之后,再刷新前台或者后台,就可以看到错误的 log 了。

2. 错误是发生在某些后台进程,比如 cron job 或者微信自定义回复的时候,没法显示错误log,我们可以把 log 保存到 debug 文件。

打开 wp-config.php 文件,将原来的 WP_Debug 设置改成如下设置:

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

然后就可以在 wp-content/debug.log 文件中看到相应的错误信息了。

最后一定要记得,测试完了一定要改回去,就是:

define('WP_DEBUG', false);

不然,你的用户也会看到你的系统错误了,或者 wp-content/debug.log 文件无限增量变大,把你服务器的空间都压榨完。

原文链接:https://www.vipiu.net/archives/2019/08/27/2383.html,转载请注明出处。
0

评论0

请先

会员低至49元,开通享海量VIP资源免费下载 自助开通
显示验证码
没有账号?注册  忘记密码?