如何禁用Symfony 2 Profiler栏?

时间:2012-01-05 21:16:52

标签: debugging symfony profiler

它没有添加任何东西,它使页面变慢,我希望它消失。不要问。关于网站上的分析器几乎没什么关于应用程序配置的内容。

8 个答案:

答案 0 :(得分:94)

此设置位于app/config/config_dev.yml

web_profiler:
    toolbar: true
    intercept_redirects: false

答案 1 :(得分:85)

附加:如果要在控制器中为特殊操作禁用它而不是使用它:

if ($this->container->has('profiler'))
{
    $this->container->get('profiler')->disable();
}

答案 2 :(得分:15)

如果您在config.yml中将framework.profiler.collect设置为false,则无法显示探查器栏(即使web_profiler.toolbar设置为true)。

 framework:
    profiler:
        collect: false

然后,您可以手动选择性地激活代码中的收集器,如下所示:

$this->container->get('profiler')->enable();

此处的文档:http://symfony.com/doc/current/reference/configuration/framework.html#collect

答案 3 :(得分:5)

试试这个

framework:
    profiler: { only_exceptions: true }

app/config/config_dev.yml

答案 4 :(得分:5)

如果您从Symfony 2.5开始创建了一个新的Symfony项目,则这些参数在app/config/paramaters.yml

中设置
parameters:
    # ...
    debug_toolbar: true
    debug_redirects: false

只需将debug_toolbar设为false

答案 5 :(得分:2)

要在/ _profiler中输出但没有工具栏,你可以作弊:

$request->headers->add(array('X-Requested-With' => 'XMLHttpRequest'));

那是因为在WebProfilerBundle / EventListener / WebDebugToolbarListener.php中,在注入工具栏之前会对此进行明确检查。

答案 6 :(得分:0)

如果您担心性能 - 那么您不应该在dev下运行。 Dev也限制了缓存,可以引入额外的包。

在运行性能测试之前,以prod模式运行并加热缓存。

答案 7 :(得分:-1)

似乎禁用它的另一种方法是在应用程序的路由中没有_dev

所以对于我来说,在安装Symfony 2时,只需稍微更改app/conf/httpd-app.conf就会改变程序:

RewriteBase /symfony/app_dev.php

RewriteBase /symfony/

它会阻止工具栏出现。