出错时,Symfony应用程序挂起浏览器不断加载页面

时间:2016-07-07 09:20:28

标签: symfony

事实证明,只有在代码中出现错误时才会出现此问题。

没有错误的代码运行顺畅,但只要有一个未定义的索引'错误,整个服务器挂起,似乎陷入无限循环。

环境是Windows,来自ApacheFriends的Apache 2.4,PHP 5.6,Symfony 2.3

1 个答案:

答案 0 :(得分:0)

事实证明这是几个问题的结果:

  1. 代码中的某个地方有人ini_set('max_execution_time', -1);
  2. 我正在与Doctrine合作。
  3. 我碰巧处理了大量数据
  4. Twig,在尝试呈现错误页面时,尝试var_dump()回溯。
  5. 使用Doctrine时,最好不要尝试`var_dump()查询结果(或实际上相同的反向跟踪)。

    使用memory_limitmax_execution_timephp_admin_value的值进行硬编码后,我能够在错误日志中获取长期搜索错误消息:

      

    [13-Jul-2016 17:28:32] PHP致命错误:在\ vendor \ twig \ twig \ lib \ Twig \ Extension \ Debug.php中,允许的内存大小为1280000000字节耗尽(试图分配1245970432字节)在第66行

         

    [13-Jul-2016 17:28:32] PHP致命错误:在第136行的\ vendor \ symfony \ symfony \ src \ Symfony \ Component \ Debug \ ErrorHandler.php中超出了60秒的最大执行时间

    看起来Twig被后面的跟踪阻塞,然后Symfony错误处理程序因某种原因被绞死。

    所以我只是在Twig错误处理程序中注释掉了var_dump(),因此能够使我的系统工作。

    希望看到更好的解决方案。