【发布时间】:2014-11-03 15:44:30
【问题描述】:
我正在使用 CakePHP 2.3 访问 CakePHP 网站时出现此错误:
PHP 致命错误:第 246 行 C:\inetpub\wwwroot\mysite\lib\Cake\Event\CakeEventManager.php 中允许的内存大小为 134217728 字节已用尽(尝试分配 4386075 字节)
这似乎不是一个循环,看起来像是与会话相关的东西,因为它在尝试使用 $this->Session->read('Auth.User.isAdmin') 读取会话变量后失败。
在此之前,我可以毫无问题地打印和die()。
更新:
PHP 致命错误:第 246 行 C:\inetpub\wwwroot\tlm\lib\Cake\Event\CakeEventManager.php 中允许的内存大小为 536870912 字节已用尽(尝试分配 12273327 字节)
更新 2
设置限制为1500M后
PHP 致命错误:第 926 行 C:\inetpub\wwwroot\tlm\lib\Cake\View\View.php 中的内存不足(已分配 1307312128)(试图分配 23778447 字节) PHP 致命错误:第 116 行的 C:\inetpub\wwwroot\tlm\lib\Cake\Error\ErrorHandler.php 中超过 30 秒的最大执行时间
更新 3
我使用的是 PHP 5.5.6。通过替换 lib 文件夹更新到 CakePHP 2.6 后,我多次收到相同的错误,并且在相同错误的 30 行之后,我得到了内存。
PHP 严格标准:只能通过引用在第 33 行的 C:\inetpub\wwwroot\tlm\app\Plugin\Combinator\View\Helper\CombinatorHelper.php 中分配变量
PHP 严格标准:仅...
PHP 严格标准:仅...
PHP 致命错误:第 958 行 C:\inetpub\wwwroot\tlm\lib\Cake\View\View.php 中允许的内存大小为 134217728 字节已用尽(试图分配 3704512 字节)
PHP 严格标准:只能通过引用在第 33 行的 C:\inetpub\wwwroot\tlm\app\Plugin\Combinator\View\Helper\CombinatorHelper.php 中分配变量
PHP 严格标准:仅...
PHP 严格标准:仅...
【问题讨论】:
-
这不是 cakephp 特有的问题,你可能有一个无限循环或类似的东西正在消耗你所有的内存。
-
更新到当前的 master 分支版本,现在也打印致命错误的堆栈跟踪 (github.com/cakephp/cakephp/pull/5053)。并以这种方式对其进行调试,以获得有关发生情况的更多信息。
-
@mark 从 2.3 版更改为当前的 2.6 版我担心由于 cakePHP 的内部变化,有些东西会停止工作。
-
@Alvaro ,至少你可以在开发实例上尝试 2.6
-
@jQueryAngryBird 更新到 2.6。我用最新的错误更新了我的问题。
标签: php cakephp cakephp-2.3