分割错误nginx + php5-fpm

我有关于分段错误的问题。

我正在运行Debian + Nging + Php5-fpm + Mysql + Imagemagick。

  1. 如何找出脚本(或程序)导致分段错误? 我需要一个非常简单的分步说明。 我search谷歌和所有可用的insructions是专业人士 – “如果你有一个核心文件做这个..”,连接debugging器“等

  2. 在我的情况下,分段错误是不规则的。 有时我只有一天有10段的错误,但有时候我几个月没有。 我没有任何有时只运行的脚本。 如果是脚本问题,我每天必须有数百个段错误。 那么,为什么segfaults有时只发生?

  3. 段错误最常见的情况是什么?

[28-May-2013 21:33:51] WARNING: [pool www] child 19448 exited on signal 11 (SIGSEGV) after 3514.206284 seconds from start [28-May-2013 21:33:56] WARNING: [pool www] child 20302 exited on signal 11 (SIGSEGV) after 4.462827 seconds from start [07-Jun-2013 20:57:40] WARNING: [pool www] child 2685 exited on signal 11 (SIGSEGV) after 58927.043729 seconds from start [07-Jun-2013 20:58:37] WARNING: [pool www] child 2684 exited on signal 11 (SIGSEGV) after 58987.506016 seconds from start [10-Jun-2013 01:23:01] WARNING: [pool www] child 14603 exited on signal 11 (SIGSEGV) after 51802.304617 seconds from start [10-Jun-2013 01:23:58] WARNING: [pool www] child 9218 exited on signal 11 (SIGSEGV) after 74891.918340 seconds from start [24-Jun-2013 00:04:39] WARNING: [pool www] child 22121 exited on signal 11 (SIGSEGV) after 156563.946260 seconds from start [24-Jun-2013 00:06:01] WARNING: [pool www] child 25055 exited on signal 11 (SIGSEGV) after 81.358472 seconds from start [24-Jun-2013 00:07:10] WARNING: [pool www] child 20595 exited on signal 11 (SIGSEGV) after 165026.445021 seconds from start [24-Jun-2013 00:07:55] WARNING: [pool www] child 22122 exited on signal 11 (SIGSEGV) after 156754.694714 seconds from start [13-Jul-2013 15:59:31] WARNING: [pool www] child 24307 exited on signal 11 (SIGSEGV) after 2526.197996 seconds from start [13-Jul-2013 15:59:42] WARNING: [pool www] child 24318 exited on signal 11 (SIGSEGV) after 2528.783217 seconds from start [13-Jul-2013 16:02:29] WARNING: [pool www] child 24389 exited on signal 11 (SIGSEGV) after 2260.254718 seconds from start [13-Jul-2013 16:19:51] WARNING: [pool www] child 25119 exited on signal 11 (SIGSEGV) after 1209.036619 seconds from start [15-Jul-2013 01:22:29] WARNING: [pool www] child 20613 exited on signal 11 (SIGSEGV) after 3060.402119 seconds from start 

  1. 我不认为我会从核心转储开始,因为你不熟悉这些工具。 首先,因为这是孩子segfaulting,检查php错误。 修复任何PHP错误。 发布任何PHP错误,你无法弄清楚。

  2. 经常segfaults是内存相关的,内存一直在改变,尤其是随着服务器负载的变化。

  3. 内存问题,堆栈问题。 错误configuration任何东西在PHP堆栈。 PHP错误,导致更大的问题发生后。

你正在运行最新的Imagemagick?

你正在运行一个操作码caching(APC等)? 如果是这样,请尝试closures,看看错误消失。

如果没有这些工作,你将不得不build立Xdebug和debugging应用程序。