Symfony2.3 - 错误时不显示Web Profiler

时间:2013-07-12 08:45:41

标签: debugging symfony profiler

我在Symfony 2.3项目的开发环境中工作时遇到了问题。

分析器在调试工具栏中运行良好,但是当我的代码出错时,我没有得到通常的Symfony分析器消息,只有浏览器500消息(Chrome上的“服务器错误”和Firefox上的空白页)

每次我想知道发生了什么时,我都必须阅读apache error.log文件以获取错误消息。

以下是我的config_dev.yml文件的内容:

imports:
- { resource: config.yml }

framework:
    router:   { resource: "%kernel.root_dir%/config/routing_dev.yml" }
    profiler: { only_exceptions: false }

web_profiler:
    toolbar: true
    intercept_redirects: false

monolog:
    handlers:
        main:
            type:  stream
            path:  %kernel.logs_dir%/%kernel.environment%.log
            level: debug
        firephp:
            type:  firephp
            level: info
        chromephp:
            type:  chromephp
            level: info

assetic:
    use_controller: true

我的app_dev.php文件:

<?php

use Symfony\Component\HttpFoundation\Request;

if (isset($_SERVER['HTTP_CLIENT_IP'])
   || isset($_SERVER['HTTP_X_FORWARDED_FOR'])
   || !in_array(@$_SERVER['REMOTE_ADDR'], array('127.0.0.1', 'fe80::1', '::1'))
) {
   header('HTTP/1.0 403 Forbidden');
   exit('You are not allowed to access this file. Check '.basename(__FILE__).' for more information.');
}

$loader = require_once __DIR__.'/../app/bootstrap.php.cache';
require_once __DIR__.'/../app/AppKernel.php';

$kernel = new AppKernel('dev', true);
$kernel->loadClassCache();
Request::enableHttpMethodParameterOverride();
$request = Request::createFromGlobals();
$response = $kernel->handle($request);
$response->send();
$kernel->terminate($request, $response);

我应该从哪里开始寻找?


1 个答案:

答案 0 :(得分:3)

我找到了答案!

在symfony 2.3中:

默认情况下不再启用调试工具,应将其添加到web / app_dev.php

详细信息https://github.com/symfony/symfony-standard/blob/2.3/UPGRADE-2.3.md