【发布时间】:2016-04-09 10:47:12
【问题描述】:
环境:Windows 7 上带有 XAMPP 版本 5.5.24 的 Symfony 2.8.1。
如果我在控制器中触发致命错误,在生产环境中像 $array = ; 这样简单的任何东西,我都会收到一个默认的 php 错误:
解析错误:语法错误,意外';'在第 16 行的 C:\xampp\htdocs\tgsupport-test\src\AppBundle\Controller\DefaultController.php 中
随后是 symfony 自定义错误页面消息。显然我想避免在生产中显示 eorr 信息。 此外,在 prod.log 中,我看到一个双重严重错误:在 php.CRITICAL 和 request.CRITICAL 下。两次显示相同的错误真的有用吗?
我正在使用默认配置,实际上我只是安装了默认框架而没有任何自定义设置,我在 AppBundle/DefaultController 中触发了我的错误,所以我想知道我是否遗漏了什么。
【问题讨论】:
-
这可能是一个错误,将在 2.8.2 中修复。见github.com/symfony/symfony/issues/16980
-
为避免在生产模式下显示错误消息,您可以轻松使用symfony.com/doc/2.8/cookbook/controller/error_pages.html中所述的自定义错误页面
-
即使我使用自定义错误页面,我也只能拦截 symfony 构建的错误消息,而不是显示在错误页面中 标签上方的默认 php 错误消息
标签: symfony debugging components fatal-error