2013-12-18 70 views
9

您好我有一个应用程序运行在CakePHP v 1.3。我已将wamp服务器更新为v2.4。更新后,我收到了此错误消息。我对php.ini设置进行了更改。CakePHP:致命错误:536870912字节允许的内存大小用尽(试图分配52字节)


  • memory_limit的= 128M
  • file_uploads = ON
  • 的upload_max_filesize = 128M
  • max_input_time设置
  • 的max_execution_time = 300
  • 的post_max_size = 128M
  • realpath_cache_size = 16K
  • realpath_cache_ttl = 120

,但我仍然得到这些错误消息:

CakePHP : Fatal error: Allowed memory size of 536870912 bytes exhausted 
(tried to allocate 52 bytes) in C:\wamp\www\gtgcrm\cake\libs\model\ 
datasources\dbo\dbo_mysql.php on line 775 

我错过了什么?任何建议将不胜感激!

回答

5

您可以通过在你的控制器动作增加内存限制

ini_set('memory_limit', '256M'); 

您也可以增加超时限制

set_time_limit(0); Infinite 
4

增加内存限制在php.ini,这并非是合适的解决方案在所有。

this case can be also occurred from code e.g infinite loop, process large amount data, or even database queries You should check code, there might have been infinite loop or such type case.

3

错误是显而易见的,它是由于通过设置ini文件或.htaccess来超出内存限制。 Anubhay写道,你也可以通过php进行设置。以下变量是您关心的问题

php_value post_max_size 1000M 
php_value upload_max_filesize 2500M 
php_value max_execution_time 6000000 
php_value max_input_time 6000000 
php_value memory_limit 2500M 

您可以使用cake包含的行为来优化查询数据。优化代码/数据而不是增加内存大小是更好的做法。

感谢

3
Try... 
Allowed memory size 
ini_set('memory_limit', '-1'); 
+7

请详细说明为什么这可能解决问题。 – theMayer

相关问题