学习NO.1 发表于 2015-8-29 12:15:03

解决Discuz论坛中插件问题导致的白屏

然现在Discuz开始引入了应用中心,有了一定的审核机制,但这审核毕竟无法测试到所有情况,而且有时候站长自己可能会装一些其他来源的插件,又或是稍微修改下,一不小心,整个论坛就都进不进去了。这对于站长,尤其是毫无任何技术基础的新人站长可是灭顶之灾。那如何解决呢?今天道勤小编就给大家讲解下如何处理这样的问题,我们只需要对Discuz的系统文件做一些小小的修改即可。

友情提醒:在正式修改文件前请记得备份。
以下修改以Discuz!X2.5(20120701)版为准,其他版本可以参照修改(行号等可能略有不同)

打开source/function/function_core.php 文件
查找
@include_once DISCUZ_ROOT.'./source/plugin/'.$include.'.class.php';替换为
static $_plugin_loaded = array();
if(empty($_plugin_loaded[$include])) {
    $txt = '?>'.file_get_contents(DISCUZ_ROOT.'./source/plugin/'.$include.'.class.php');
    eval($txt);
    $_plugin_loaded[$include] = 1;
}大功告成,这样子论坛就不会因为一个小小的插件的问题而全部崩溃了。
当然,我必须得说明,这样子的方法只能使论坛不崩溃,而插件本身的问题并没有解决,自然,那个有问题的插件的功能也依然是有问题的。
页: [1]
查看完整版本: 解决Discuz论坛中插件问题导致的白屏