Знам, че може да е късно, но ми помогна. Повечето пъти модул причинява WSOD, не можех просто да деактивирам модули, за да тествам кой е, тъй като може да съм загубил данни в процеса. Това, което направих, беше да редактирам тази функция в module.inc
function module_invoke_all($hook) {
$args = func_get_args();
// Remove $hook from the arguments.
unset($args[0]);
$return = array();
foreach (module_implements($hook) as $module) {
print "Starting loading $module <br />";
$function = $module . '_' . $hook;
if (function_exists($function)) {
$result = call_user_func_array($function, $args);
if (isset($result) && is_array($result)) {
$return = array_merge_recursive($return, $result);
}
elseif (isset($result)) {
$return[] = $result;
}
}
print "Finished loading $module <br />";
}
return $return;
}
И аз добавих тези 2 израза за печат в кода по-горе, след което опресних страницата, модулът, който не достигна до оператора „Завършване на зареждането на $module“, е този с проблема... това беше devel в моя случай.
След като намерите модула, можете да отидете в системната таблица и да потърсите този модул, да зададете статуса му = 0 и bootstrap = 0 или да изпълните заявката:
UPDATE system SET status = 0, bootstrap = 0 WHERE name = 'module_name' LIMIT 1
person
Joshua Kissoon
schedule
01.03.2014