discuz 网站遇到问题时,常常伴随着页面白屏或部分页面空白,php.ini 里面开启了错误提示也不显示具体错误信息,这是因为 discuz 压制了 PHP 的报错提示。
在核心文件 
source/class/discuz/discuz_application.php 里有这样一段代码
🤛🌧🍍♾🦊
关键代码 :
这个代码表示关闭所有 PHP 错误报告。
🤌🎢🍌🅿🦄
那我们只要注释掉这段代码,然后开启 PHP 的报错提示,就可以找到页面空白的根本原因了。
👨🎨📱🤩🤟
注释掉:
全屏查看-   if(empty($_config['security']['authkey'])) {
 
-                         $_config['security']['authkey'] = md5($_config['cookie']['cookiepre'].$_config['db'][1]['dbname']);
 
-                 }
 
- 👴💄🛒😈🤞
 
-                 if(empty($_config['debug']) || !file_exists(libfile('function/debug'))) {
 
-                         define('DISCUZ_DEBUG', false);
 
-                         error_reporting(0);
 
-                 } elseif($_config['debug'] === 1 || $_config['debug'] === 2 || !empty($_REQUEST['debug']) && $_REQUEST['debug'] === $_config['debug']) {
 
-                         define('DISCUZ_DEBUG', true);
 👃🌦🍭☣🐶
-                         error_reporting(E_ERROR);
 
-                         if($_config['debug'] === 2) {
 
-                                 error_reporting(E_ALL);
 
-                         }
 
-                 } else {🧑🎤🎩📮😂💅
 
-                         define('DISCUZ_DEBUG', false);
 
-                         error_reporting(0);
 
-                 }
 
添加:
👄🚐🍞❎🐯
-                 define('DISCUZ_DEBUG', true);
 
-                 error_reporting(7);
解决问题之后,记得改回原来的代码。
