PHP 内存不足错误,即使未达到memory_limit
我刚刚继承了一个带有PHP脚本的站点,该脚本在117 MB时一直内存不足。即使我将PHP的memory_limit变量增加到312 MB,也会发生这种情况,这是我通过php.ini完成的。
由于pcguru的一个很好的线索,这个问题现在已经解决了。看到我的答案开始:我终于找到了答案
ini_get('memory_limit')
返回php中设置的值.ini,所以我确定Apache在更改值后重新启动。我使用返回脚本在过程中的不同点消耗的内存。当它达到117 MB时,它一直失败。memory_get_usage(true)
是否有一些我不知道的内部PHP限制,它从未为单个脚本分配超过117MB?
服务器有1GB的RAM,并且正在运行CentOS。我有根外壳访问权限。PHP 版本为 5.3.18。MySQL是5.1.66-cll版本。
此脚本位于用户名/密码后面,我无法提供对它的公共访问权限。
已编辑以添加:
1)感谢您迄今为止的帮助。您可以在我对特定用户评论的回复中找到更多信息,在下面的各种答案下。
2)Suhosin绝对没有安装。我已经在多个地方进行了检查,包括运行脚本并检查常量以及运行php -v
3)apache日志没有我收到的特定错误消息的记录。日志记录在 php.ini 中打开。我通过管道通过 grep 搜索整个日志。
4)在这种情况下,是否有可能报告错误的错误?