Symfony 2调试工具栏没有显示

The*_*e50 7 php profiler symfony

Symfony调试工具栏没有出现,我试图检查很多东西,但到目前为止没有运气.

我在app_dev.php环境中运行网站,我的config_dev.yml有:

web_profiler:
toolbar: true
intercept_redirects: false
Run Code Online (Sandbox Code Playgroud)

app_dev/php没有任何IP限制,它使用开发环境运行AppKernel.另外,AppKernel有: $bundles[] = new Symfony\Bundle\WebProfilerBundle\WebProfilerBundle(); 主要问题可能是HTML,但它有开始和结束标记.我甚至试图删除所有的HTML,只留下一些HTML和body标签,没有运气.

还有什么我可以尝试的吗?也许有些文件可能会丢失?我怎么检查呢?这不是Symfony的全新安装版本.

Beh*_*yar 17

确保您可以勾选此清单中的所有项目符号:

  • 您正在通过app_dev.php访问该页面来使用开发模式(对您来说是真的)
  • 工具栏通过</body>在生成的页面上查找终止标记将其自身插入页面中.如果</body>页面中没有标记,则不会显示工具栏(如上面的答案).示例twig文件作为参考:

    该行将{% extends '::base.html.twig' %}扩展app/Resources/views/base.html.twig为默认<body>...</body>注入您的自定义twig文件.

    {% extends '::base.html.twig' %}
    
    {% block body %}
      Hello!
    {% endblock %}
    
    Run Code Online (Sandbox Code Playgroud)
  • 您已启用了探查器 AppKernel.php

    public function registerBundles(){
      $bundles = ...
      if (in_array($this->getEnvironment(), array('dev', 'test'))) {
        $bundles[] = new Symfony\Bundle\WebProfilerBundle\WebProfilerBundle();
      ...
      }
    return $bundles;
    }
    
    Run Code Online (Sandbox Code Playgroud)
  • 你已经启用了javascript.

  • 彻底检查最近添加的捆绑包(特别是自定义捆绑包).因为这样的案例可能会导致问题.


小智 7

仔细检查您的<body>代码是否有结束</body>标记.根据我的经验,当工具栏突然消失时,因为HTML格式错误导致关闭的body标签丢失,或者控制器返回的Response文本内容只有纯文本内容.