Apache错误日志:zend_mm_heap损坏,子进程退出状态1 - 重新启动

时间:2014-02-09 04:57:31

标签: php apache session runtime-error

我已经看到一些关于'zend_mm_heap'损坏和'子进程退出状态为nnnnn'的主题,但这些主题都没有导致解决方案。状态1在明文中意味着什么,目前尚不清楚究竟发生了什么。

症状 站点在未登录的情况下运行时不会发生此问题。仅在我登录问题时,有时会在刷新页面时发生。奇怪的是,有时html无法加载,有时候像CSS文件或JS文件这样的资源。我也看到一些资源需要6秒到10秒才能加载。我认为这是由于此错误而重新启动服务器引起的。

当出现上述症状时,会将以下(类似)信息写入error.log文件:

error.log文件中的错误:

zend_mm_heap corrupted
[Sun Feb 09 03:56:57 2014] [notice] AH00428: Parent: child process exited with status 1 -- Restarting.
[Sun Feb 09 03:56:57 2014] [notice] AH00455: Apache/2.4.3 (Win64) configured -- resuming normal operations
[Sun Feb 09 03:56:57 2014] [notice] AH00456: Server built: Aug 18 2012 14:13:48
[Sun Feb 09 03:56:57 2014] [notice] AH00418: Parent: Created child process 3460
[Sun Feb 09 03:56:57 2014] [notice] AH00354: Child: Starting 64 worker threads.

配置:

  • Intel I7(Quadcore)芯片组,16GB RAM
  • 在Windows 7 64位上运行最新的XAMMP(或Z-WAMP,同样存在问题 - 请参阅Z-WAMP http://zwamp.sourceforge.net/
  • 运行APC -

例如: Info in firefox-result of error - send headers

正常反馈(未发生问题时): firefox ok

我想知道的事情

  • 是否有关于Apache状态1退出的信息?
  • 我能调试这个,我该怎么调试呢?

1 个答案:

答案 0 :(得分:0)

APC(我使用版本1.3.1)存在导致此错误的问题,由于某种原因导致内存损坏。我相信它与会话数据有关,因为只有在登录时才会出现问题。我的PHP类只在需要登录才能查看页面时才使用会话。我也检查了我的代码,但没有任何异常或不完整。

当我关闭php.ini文件中的Windows扩展php_apc.dll时,everthing工作正常。没有内存损坏,没有延迟。还尝试了其他缓存扩展,如xCache,eAccelerator,memcache和正常加载。

所以我认为这是一个错误。