用户名: 密码: 忘记密码? 注册
收藏此问题 发表新评论

PHP memory_limit设置无效

各位大侠,我的服务器设置PHP.ini中memory_limit限制为800M,但是实际上使用根本就没有达到这么多就开始报错了,一般几兆就开始报错,这是什么原因?系统是windows,用的wamp套装,用phpinfo查看,memory_limit=800M

之前在网上查到好像php 5.2.3有一个bug,设置内存限制不一定生效,但是我是用的php 5.2.5应该没有这个bug 了吧?
昵称: yancheng518  时间: 2011-06-08 15:16:22
具体错误信息是怎样的?
如果使用了表单提交数据,也有可能是超过了post_max_size的限制;如果是上传文件,还要检查一下upload_max_filesize
昵称: T5500  时间: 2011-06-08 15:26:41
你在 web 服务器启动并确认 php 所需的动态连接库全部加载后,用系统管理器查看可用的物理内存
注意,是物理内存而不是虚拟内存。如果仍然大于 800M,那么请检查你的程序。

你在做什么,需要那么大的内存?
昵称: xuzuning  时间: 2011-06-08 15:30:40
没有用表单提交数据,报错就是类似于这样Fatal error: Allowed memory size of 1777216 bytes exhausted (tried to allocate 7520 bytes) 只是每次数字不同,根据提示的已经申请到的内存和需要申请的内存,加起来一般不超过10M,在做一个自动采集的程序,需要对采集到的内容进行一些处理,所以需要的内存比较大。服务器内存是2G
昵称: yancheng518  时间: 2011-06-08 15:35:30
Fatal error: Allowed memory size of 1777216 bytes exhausted (tried to allocate 7520 bytes) 
致命错误:允许内存大小 1777216字节用尽(尝试分配7520字节)

这才 1M 多内存呀!

通过 phpinfo 检查你的设置是否正确!
昵称: xuzuning  时间: 2011-06-08 15:51:51
发表评论
昵称:
内容:
验证: