apache seg fault,libphp5.so中的do_bind_function

时间:2012-03-19 10:20:04

标签: php apache2 gdb segmentation-fault

我一直在ubuntu 10.04上获取这些日志条目:

# vim /var/log/apache2/error.log

[Sun Mar 18 08:58:01 2012] [notice] child pid 4300 exit signal Segmentation fault (11)
[Sun Mar 18 08:58:02 2012] [notice] child pid 4302 exit signal Segmentation fault (11)
[Sun Mar 18 08:58:03 2012] [notice] child pid 4303 exit signal Segmentation fault (11)
[Sun Mar 18 08:58:03 2012] [notice] child pid 4304 exit signal Segmentation fault (11)
[Sun Mar 18 08:58:04 2012] [notice] child pid 4305 exit signal Segmentation fault (11)
[Sun Mar 18 08:58:04 2012] [notice] child pid 4306 exit signal Segmentation fault (11)
[Sun Mar 18 08:58:04 2012] [notice] child pid 4307 exit signal Segmentation fault (11)
[Sun Mar 18 08:58:04 2012] [notice] child pid 4308 exit signal Segmentation fault (11)

我做了一个apacheump的apache并试图弄清楚问题是什么,但我不明白这究竟是什么意思以及我能做些什么来摆脱seg-faults:

# gdb /usr/sbin/apache2 core

[...]

Program terminated with signal 11, Segmentation fault.
#0  0x00007f78121f36ad in do_bind_function ()
   from /usr/lib/apache2/modules/libphp5.so
(gdb) where
#0  0x00007f78121f36ad in do_bind_function ()
   from /usr/lib/apache2/modules/libphp5.so
#1  0x00007f781223614c in ?? () from /usr/lib/apache2/modules/libphp5.so
#2  0x00007f7812235ee0 in execute () from /usr/lib/apache2/modules/libphp5.so
#3  0x00007f781220d92d in zend_execute_scripts ()
   from /usr/lib/apache2/modules/libphp5.so
#4  0x00007f78121b92f8 in php_execute_script ()
   from /usr/lib/apache2/modules/libphp5.so
#5  0x00007f781229b08d in ?? () from /usr/lib/apache2/modules/libphp5.so
#6  0x00007f781605e320 in ap_run_handler (r=0x7f7816d4b4a8)
    at /build/buildd/apache2-2.2.14/server/config.c:159
#7  0x00007f7816061c88 in ap_invoke_handler (r=0x7f7816d4b4a8)
    at /build/buildd/apache2-2.2.14/server/config.c:373
#8  0x00007f781606f878 in ap_process_request (r=0x7f7816d4b4a8)
    at /build/buildd/apache2-2.2.14/modules/http/http_request.c:282
#9  0x00007f781606c728 in ap_process_http_connection (c=0x7f7816d452d8)
    at /build/buildd/apache2-2.2.14/modules/http/http_core.c:190
#10 0x00007f7816065ed8 in ap_run_process_connection (c=0x7f7816d452d8)
    at /build/buildd/apache2-2.2.14/server/connection.c:43
#11 0x00007f7816074847 in child_main (child_num_arg=<value optimized out>)
    at /build/buildd/apache2-2.2.14/server/mpm/prefork/prefork.c:662
#12 0x00007f7816074b5a in make_child (s=0x7f7816824938, slot=4)
    at /build/buildd/apache2-2.2.14/server/mpm/prefork/prefork.c:758
---Type <return> to continue, or q <return> to quit---
#13 0x00007f78160757e4 in perform_idle_server_maintenance (
    _pconf=<value optimized out>, plog=<value optimized out>,
    s=<value optimized out>)
    at /build/buildd/apache2-2.2.14/server/mpm/prefork/prefork.c:893
#14 ap_mpm_run (_pconf=<value optimized out>, plog=<value optimized out>,
    s=<value optimized out>)
    at /build/buildd/apache2-2.2.14/server/mpm/prefork/prefork.c:1097
#15 0x00007f781604a350 in main (argc=3, argv=0x7fff69cdda08)
    at /build/buildd/apache2-2.2.14/server/main.c:742

1 个答案:

答案 0 :(得分:1)

可能已经报告了PHP bug。有一些解决方法,尝试应用其中一个。