当前位置: 首页 > 面试题库 >

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

房时铭
2023-03-14
问题内容

我正在使用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

问题答案:

将gdb附加到httpd子进程之一,然后重新加载或继续工作并等待崩溃,然后查看回溯。做这样的事情:

$ ps -ef|grep httpd
0     681     1   0 10:38pm ??         0:00.45 /Applications/MAMP/Library/bin/httpd -k start
501   690   681   0 10:38pm ??         0:00.02 /Applications/MAMP/Library/bin/httpd -k start

现在将gdb附加到子进程之一,在本例中为PID 690(列为UID,PID,PPID等)

$ sudo gdb
(gdb) attach 690
Attaching to process 690.
Reading symbols for shared libraries . done
Reading symbols for shared libraries ....................... done
0x9568ce29 in accept$NOCANCEL$UNIX2003 ()
(gdb) c
Continuing.

等待崩溃…然后:

(gdb) backtrace

要么

(gdb) backtrace full

应该给你一些线索,这是怎么回事。如果提交错误报告,则应包括回溯。

如果崩溃难以重现,则最好将Apache配置为仅使用一个子进程来处理请求。配置是这样的:

StartServers 1
MinSpareServers 1
MaxSpareServers 1


 类似资料:
  • 问题内容: 我正在使用PHP5,CodeIgniter和Apache。本地php页面加载正常,然后突然开始使Apache崩溃。 apache崩溃时,网页似乎进入了不同的加载阶段。 Apache错误日志文件中唯一有趣的行是: [注意]父:子进程已退出,状态为3221225477-正在重新启动。 Web上对此问题进行了很多讨论,但是似乎没有一个解决方案,不同的人描述了适用于其系统的不同解决方案。 建议

  • 问题内容: 我遇到了错误… 命令由于信号失败:分段错误:11 …尝试编译我的Swift应用程序时。我正在使用Xcode 6.1,尝试在iOS 8.1上为iPhone 5进行构建。 我的密码 和错误文本! 问题答案: 对于遇到此问题的其他人…我发现问题是由导入自定义框架引起的,我不知道如何纠正它。但是,只需从框架中删除导入和任何引用项目的代码即可解决此问题。 (╯°□°)╯︵┻━┻ 希望这可以节省一

  • 我在编写一些简单的代码来自学信号量和POSIX共享内存时遇到了问题。 其思想是一个程序,即服务器,打开共享内存并向其中写入一个结构(包含信号量和数组)。然后它等待输入,输入之后信号量递增。 同时,客户端打开共享内存,等待信号量,在服务器增加信号量之后,读取结构。 服务器似乎工作正常,但是我在客户端的函数处立即遇到了一个segfault(甚至在服务器增加它之前)。我想不出哪里出了问题。 服务器代码:

  • 我在实现合并排序时遇到了分段错误。我已经检查了数组是否超出边界。我想得到一些帮助,找出我哪里出了问题。我尝试过小数组的输入,例如大小为10的数组,我将temp的大小作为静态值( 更新:我只需要改变mid=(低高)/2。

  • 我正在intellij上使用openjdk11+javafx11 每次尝试运行需要javafx的代码时,都会得到这个错误。在搜索了一下之后,它似乎与显示服务器(xorg,使用archlinux KDE5)有关。但我找不到任何能帮我解决问题的东西。 如果有人能提供一些解决方案的洞察力,那将是令人高兴的。 下面是我运行它时得到的输出: /usr/lib/jvm/jdk-11.0.1/bin/Java-

  • 我试图在vscode中调试一个flutter的演示应用程序,错误显示为ADB退出,代码1执行流式安装。我卸载现有的Flutter演示应用程序。