2010-03-04 139 views
0

我刚刚搭建的一个新模块,当我保存使用产生的形式,我得到:Symfony的最大允许大小错误

致命错误:用尽8388608个字节允许内存大小(试图分配19456个字节)/应用/ MAMP/htdocs/ats/lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/vendor/doctrine/Doctrine/Hydrator/Graph.php on line 404

任何想法为什么?

回答

0

因为这是你的PHP配置的内存限制。你可能想从phpinfo()中找到它使用的php.ini并编辑它以给symfony更多的记忆。

1

symfony对内存相当贪婪,所以这有时会发生。你可以增加可通过php.ini的PHP/symfony的内存上面的建议:

的php.ini:这里

memory_limit = 128M 

128M仅仅是一个例子,但一个你可能需要评估。

0

memory_limit是PHP脚本允许使用的最大内存量。基本上,这是一个安全配置选项,以确保您没有一个疯狂的PHP脚本并占用了服务器的所有内存 - 或者更糟糕的是,您没有几个PHP脚本比内存占用更多​​内存服务器有。


该配置指令可以在php.ini文件中设置;它是设置PHP配置的文件。

要找出服务器上的php.ini文件的位置,可以使用phpinfo()函数:在输出顶部附近的某处应该有一个“Loaded Configuration File”选项。


对于memory_limit应该使用哪个值是一个有趣的问题......在过去,当我们只写小脚本时,8MB已足够。

现在有了框架,更大的应用程序层,ORM结构,以及所有这一切,8MB通常是不够的(因为你显然注意到) - 我一般设置memory_limit32M我的生产服务器,这几乎是总是足够我的应用程序,而不是太多

所以,在我php.ini文件,我有:

memory_limit = 32M 


注:这将是诱人的把一个非常高的价值memory_limit,刚刚摆脱的问题......但是,请记住memory_limit在这里是作为安全性的:你应该确保你的服务器有足够的内存来同时回答多个请求!

相关问题