apache error.log中的“ [notice]子pid XXXX退出信号分段错误(11)”

我正在使用Apache / PHP / MySQL堆栈。

作为CakePHP框架使用。


我时不时地得到一个空白的白页。我无法通过Cake对其进行调试,因此我查看了apache error.log,这是我得到的:


[Wed Oct 12 15:27:23 2011] [notice] child pid 3580 exit signal Segmentation fault (11)

[Wed Oct 12 15:27:34 2011] [notice] child pid 3581 exit signal Segmentation fault (11)

[Wed Oct 12 15:30:52 2011] [notice] child pid 3549 exit signal Segmentation fault (11)

[Wed Oct 12 16:04:27 2011] [notice] child pid 3579 exit signal Segmentation fault (11)

zend_mm_heap corrupted

[Wed Oct 12 16:26:24 2011] [notice] child pid 3625 exit signal Segmentation fault (11)

[Wed Oct 12 17:57:24 2011] [notice] child pid 3577 exit signal Segmentation fault (11)

[Wed Oct 12 17:58:54 2011] [notice] child pid 3550 exit signal Segmentation fault (11)

[Wed Oct 12 17:59:52 2011] [notice] child pid 3578 exit signal Segmentation fault (11)

[Wed Oct 12 18:01:38 2011] [notice] child pid 3683 exit signal Segmentation fault (11)

[Wed Oct 12 22:20:53 2011] [notice] child pid 3778 exit signal Segmentation fault (11)

[Wed Oct 12 22:29:51 2011] [notice] child pid 3777 exit signal Segmentation fault (11)

[Wed Oct 12 22:33:42 2011] [notice] child pid 3774 exit signal Segmentation fault (11)

这是什么细分错误,如何解决?


更新:


PHP Version 5.3.4, OSX local development

Server version: Apache/2.2.17 (Unix)

CakePhp: 1.3.10


胡子哥哥
浏览 602回答 3
3回答

慕的地10843

分段错误是php中的内部错误(或者不太可能是apache)。通常,分段错误是由更新较少且测试较少的php模块之一(例如imagemagick或subversion)引起的。尝试禁用所有非必需模块(中的php.ini),然后逐个重新启用它们,直到发生错误。您可能还想更新php和apache。如果这样做没有帮助,则应报告php bug。

一只名叫tom的猫

要找出是哪个模块,只需禁用所有非必需的模块(从所有外部开发的模块开始,如mod-geoip)。问题继续存在吗?然后禁用更多。看不到任何段错误了吗?启用更多模块,直到您这样做。如果您在技术上有偏见并拥有调试器,请参阅@Mathias Wadmann的出色答案。请注意,调试器可能会误导您-有时崩溃可能在另一个模块中。
打开App,查看更多内容
随时随地看视频慕课网APP