使用标准PHP 5.6损坏了zend_mm_heap:查找原因

时间:2018-06-08 22:47:32

标签: php apache amazon-ec2 opcache

将PHP的opcache参数设置为1(打开,默认值)会让我' zend_mm_heap损坏' Apache日志文件中的错误,每天几次,不定期。

之前的StackOverflow答案表明这可能是因为(a)使用其他缓存模块(如APC) - 不是这里的情况,因为只使用标准PHP发行版而没有任何非本机缓存或(b)用完内存 - 但根据free -m或(c)PHP编译器中的错误,我至少有1.6G可用的交换空间 - 不太可能因为这个错误没有被广泛报道而且我没有做任何异常的事情。

服务器运行多个网站,使用Drupal,Joomla和定制的PHP构建。我正在使用亚马逊Linux 2上的事件MPM运行带有mod_php和Apache 2.4.33的标准PHP5.6.36。

唯一不完全标准的东西是我使用Amazon AWS SDK for PHP v.3发送邮件,但我没有理由认为这会导致问题。

如何找出导致堆损坏的原因?

1 个答案:

答案 0 :(得分:0)

看起来这个错误已经reported。在评论中,它建议在php.ini中设置以下内容:

opcache.revalidate_freq=7000
opcache.fast_shutdown=0