我得到這個奇怪的錯誤child pid 1789 exit signal Bus error (10)
我從來沒有見過我的Apache錯誤日誌。我正在使用FuelPHP框架。網絡應用程序工作正常。但是今天我突然創建了新的控制器,它本身就是另一個控制器的副本。我從一個複製的工作正常(http:// localhost/myapp/admin/users),但副本(http:// localhost/myapp/admin/apartments)使我出現錯誤?!我對此感到沮喪。Apache錯誤 - 孩子pid 1789退出信號總線錯誤(10)
經過3個小時的調試,我終於找到了整個事情停止的地方。它位於路由器類的FuelPHP核心中,位於此行if (class_exists($class))
。之前的$class
如果有值Controller_Admin_Apartments
,這是我添加並存在於我的控制器類文件夾中的類。
燃料/核心/班/ router.php:
protected static function parse_segments($segments, $namespace = '', $module = false)
{
$temp_segments = $segments;
foreach (array_reverse($segments, true) as $key => $segment)
{
$class = $namespace.'Controller_'.\Inflector::words_to_upper(implode('_', $temp_segments));
array_pop($temp_segments);
if (class_exists($class)) // ***** HERE ERROR HAPPENS ***** //
{
return array(
'controller' => $class,
'action' => isset($segments[$key + 1]) ? $segments[$key + 1] : null,
'method_params' => array_slice($segments, $key + 2),
);
}
}
// Fall back for default module controllers
if ($module)
{
$class = $namespace.'Controller_'.$module;
if (class_exists($class))
{
return array(
'controller' => $class,
'action' => isset($segments[0]) ? $segments[0] : null,
'method_params' => array_slice($segments, 1),
);
}
}
return false;
}
在FeulPHP forum用戶注意到這涉及可能是硬件。但事實並非如此。我把整個東西移到另一臺電腦上,仍然有相同的事情。我只是不明白。這裏發生了什麼?