我理解在各种不同场景下可以返回500响应,但是有没有办法让服务器具体导致500?或者就此而言将其打印到PHP页面/输出?
修改
我在MediaTemple的网格服务上,显示错误在phpinfo()
中,以下是我的PHP代码:ini_set('display_errors',1);
error_reporting(E_ALL|E_STRICT);
并且在我的托管配置中打开了错误日志记录,但是当我tail
日志时,当我点击刷新时没有任何内容出现。有什么想法吗?
答案 0 :(得分:1)
500错误的原因应该在Apache的错误日志中。如果PHP负责,那么如果php.ini中有display_errors = On
,则错误将显示在屏幕上。
答案 1 :(得分:0)
您可以尝试:
$log_file = 'c:temp\test_error.txt';
register_shutdown_function('handleShutdown');
function handleShutdown() {
global $log_file;
$error = error_get_last();
if ($error !== NULL) {
$info = "[SHUTDOWN] file:" . $error['file'] . " | ln:" . $error['line'] . " | msg:" . $error['message'] . PHP_EOL;
file_put_contents($log_file, $info, FILE_APPEND);
} else {
file_put_contents($log_file, "SHUTDOWN ", FILE_APPEND);
}
}