Symfony Route中断调试工具栏

时间:2014-06-08 11:33:09

标签: php symfony

通过Controller加载我的Twig-Template并显示它 - 它需要一段时间,我显示此错误:“加载Web调试工具栏时出错(404:Not Found)。”

现在我研究了大约2个小时,找不到适合我的解决方案!我发现导致这个问题的“事情” - 它的路线如下:

showPage:
pattern: /{a}/{b}/{c}
defaults: { _controller: MyBundle:Page:show, a: null, b: null, c: / }
requirements:
    b: \d+
    c: .+

我更改了routing_dev.yml中的顺序,以便在WDT之前导入routing.yml,以便它可以覆盖它 - routing_dev.yml现在看起来像:

_main:
    resource: routing.yml

_wdt:
    resource: "@WebProfilerBundle/Resources/config/routing/wdt.xml"
    prefix:   /_wdt

_profiler:
    resource: "@WebProfilerBundle/Resources/config/routing/profiler.xml"
    prefix:   /_profiler

_configurator:
    resource: "@SensioDistributionBundle/Resources/config/routing/webconfigurator.xml"
    prefix:   /_configurator

我使用当前的Symfony-Version 2.5.0 - .htaccess文件是Symfony2-Repo的默认文件 - mod_rewrite和mod_alias已启用!

如果我转到一个不存在的页面,symfony说找不到“bla”的路由 - 工具栏就可以了。

您是否知道如何为WDT-Routes制作例外?

4 个答案:

答案 0 :(得分:0)

我认为这是一条路线问题 - 在一个使用Doctrine DBAL QueryBuilder并尝试将对象传递给" fetchAll"的EventListener中导致的问题。 DBAL-Connection。

这是一个错误的原因,但Symfony并没有告诉任何地方它只显示我的网站,并说404为Debug-Toolbar。

答案 1 :(得分:0)

打开日志文件app/logs/dev.log并搜索CRITICAL关键字,您将找到Symfony未捕获的Fatal Error。尝试解决它。​​

答案 2 :(得分:0)

这里聚会很晚,但我遇到了同样的情况,很难找到答案。这正是nPoday在2014年6月9日所说的:我有一个倾向于发出错误的倾听者,尽管它与教义无关。这是一个AWS包装器的问题,它甚至没有被启动时的应用程序解雇,也没有我正在加载的那个展示问题的页面。绝对检查你的监听器,逐个禁用它们,你可能会发现调试工具栏突然开始工作。

答案 3 :(得分:0)

有很多东西可能会破坏工具栏,其中一个最常见的是一个没有出现错误的东西。因此,在拔掉所有头发之前,请务必检查所有日志。

在我的情况下,由于我的"NOTICE: PHP message: PHP Fatal error: Access level to UserBundle\Entity\User::$id must be protected (as in class FOS\UserBundle\Model\User) or weaker in ..."是私有的,因此id

修复后,工具栏重新出现。