Php Symfony2提供空白页

Php Symfony2提供空白页,php,orm,doctrine-orm,symfony,Php,Orm,Doctrine Orm,Symfony,Symfony 2死了,给了我一页空白。免责声明:我讨厌空白页。不管怎样,我怎样才能发现哪里出了问题;它为什么死了;为什么没有错误 检查dev.log它会给我提供无用的信息: [2011-08-05 08:41:33] doctrine.DEBUG: UPDATE accTransactions SET report_id = ? WHERE id = ? ([8163,2941852]) [2011-08-05 08:41:33] event.DEBUG: Notified event "ke

Symfony 2死了,给了我一页空白。免责声明:我讨厌空白页。不管怎样,我怎样才能发现哪里出了问题;它为什么死了;为什么没有错误

检查
dev.log
它会给我提供无用的信息:

[2011-08-05 08:41:33] doctrine.DEBUG: UPDATE accTransactions SET report_id = ? WHERE id = ? ([8163,2941852])
[2011-08-05 08:41:33] event.DEBUG: Notified event "kernel.view" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\TemplateListener::onKernelView".
[2011-08-05 08:41:33] event.DEBUG: Listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\TemplateListener::onKernelView" stopped propagation of the event "kernel.view".
[2011-08-05 08:41:33] event.DEBUG: Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\ResponseListener::onKernelResponse".
[2011-08-05 08:41:33] event.DEBUG: Notified event "kernel.response" to listener "Symfony\Bundle\SecurityBundle\EventListener\ResponseListener::onKernelResponse".
[2011-08-05 08:41:33] event.DEBUG: Notified event "kernel.response" to listener "Symfony\Bridge\Monolog\Handler\FirePHPHandler::onKernelResponse".
[2011-08-05 08:41:33] event.DEBUG: Notified event "kernel.response" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\CacheListener::onKernelResponse".
[2011-08-05 08:41:33] event.DEBUG: Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\ProfilerListener::onKernelResponse".
[2011-08-05 08:41:35] event.DEBUG: Notified event "kernel.response" to listener "Symfony\Bundle\WebProfilerBundle\EventListener\WebDebugToolbarListener::onKernelResponse".
php_error.log和其他文件没有错误

我正在一个大的表上运行更新,每个请求执行1500多个查询(大约需要15秒)。我认为PHP的消亡与Doctrine2有关。它是非常不稳定的,因为当事务数量似乎增加时,它开始消亡。。。我不得不承认,我对ORM的期望远不止这些,而不仅仅是空白死亡

是否有数据库日志文件或其他可能给我错误的信息?除了一次处理一个事务外,还需要处理其他事务,因为这需要13333小时。。。如果您查看第一个日志条目,这是一个非常基本的更新(只是添加了一个关系)

我正在用APC运行PHP5.3.2

我还注意到,当函数到达底部的flush命令时,它会成功地执行它。
因此,我假设现在只有SF2没有成功地呈现视图?

我认为您应该打开并查看MySQL查询日志。在DebianLinux上,您应该编辑文件
/etc/mysql/my.cnf
,并对其进行编辑,使其外观类似于

[mysqld]
# ...

# * Logging and Replication
#
# Both location gets rotated by the cronjob.
# Be aware that this log type is a performance killer.
# As of 5.1 you can enable the log at runtime!
general_log_file        = /var/log/mysql/mysql.log
general_log             = 1
log_error                = /var/log/mysql/error.log
因此,您可以通过
tail-F/var/log/mysql/mysql.log

在您的环境的配置文件中尝试向twig添加“cache:false”来实时查看它。
解决我的问题。

如果您在Doctrine2中进行批处理,那么您的实体管理器将不断增长,并且您正在突破PHP内存限制

您正在创建数千个对象,并且每个周期都在增长


使用ORM进行批处理时需要小心,以消除内存泄漏。ORM并不总是这项工作的最佳工具,但如果您对所做的事情非常小心,则可以使用ORM。

尝试删除以下文件夹: -缓存 -日志


并重新加载页面。

即使在开发环境中也有空白页面?(使用app_dev.php文件)。你看过档案器了吗?(您可以搜索旧请求,然后查看所有的开发日志)(愚蠢的问题)您是否可以尝试添加ini_集(“显示错误”,1);在app_dev.php的开头,您的链接的可能副本被破坏:这并没有提供问题的答案。若要评论或要求作者澄清,请在他们的帖子下方留下评论-你可以随时在自己的帖子上发表评论,一旦你有足够的评论,你就可以发表评论。我不能在他们的帖子下方留下评论,这就是我创建答案的原因。尽管如此,我还是找到了我一直在寻找的解决方案。问题来自缓存文件夹。php bin/console缓存:warmup成功了。为了回答这个问题,我认为在试图清除缓存(文件夹)时,一些文件没有重新生成,例如classes.php或classes.meta.php,这会导致内部服务器错误,从而导致web profiler无法显示自身或错误。这是在我安装Symfony 2.5和Sonata管理包之后发生的。希望有帮助。在我的例子中,清除缓存本身并不能解决问题。但是控制台会在执行命令后输出问题。当我试图访问SonatAdminBundle列表视图时,TWIG在第223行的…Environment.php:eval()代码中耗尽了允许的内存大小。我同意,这需要大量内存。希望你能找到解决问题的办法。