解决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]