我将使用所有这些指南将我的Symfony从2.0升级到2.5:
https://github.com/symfony/symfony/blob/master/UPGRADE-2.1.md
https://github.com/symfony/symfony/blob/master/UPGRADE-2.2.md
https://github.com/symfony/symfony/blob/master/UPGRADE-2.3.md
https://github.com/symfony/symfony/blob/master/UPGRADE-2.4.md
https://github.com/symfony/symfony/blob/master/UPGRADE-2.5.md
我的首页有效但是网络调试工具栏会抛出" 404 Not found"。 经过一整天的搜索和挖掘的symfony代码,我发现:
terminate
方法的地方(这是我卡住的最后一个地方)也许有人有类似的问题?
答案 0 :(得分:2)
3) kernel.terminate event wont fires
确保正确配置了收听'kernal.terminate'事件的所有服务。即Symfony应该能够实例化正在收听'kernal.terminate'事件的服务。
原因: 当Symfony调度'kernal.terminate'事件时,调度程序首先获取正在侦听此事件的服务列表。如果它无法获取服务列表,则会抛出异常。由于此异常发生在终止并且响应已经发送,因此除了日志之外,您将无法在任何地方看到异常。
如果无法获取列出到'kernal.terminate'的服务列表,则很可能由于任何原因在实例化任何服务时出错。例如。传递给构造函数的参数错误/不可用。
提示:在调试时保持跟踪symfony日志和php日志。
4) i can't find place where Kernel terminate method is called
您可以在app_dev.php
或app.php