今天我尝试安装Xdebug,然后安装Netbeans,Netbeans chrome扩展等等,突然我创建新mysqli对象的PHP脚本无法正常工作:
<?php
$connection = new mysqli('localhost', 'root','mysqlsamplepassword', 'Test_Database');
?>
当登录凭据错误时,我会收到正确的警告,但是当它们正常时,网络浏览器会显示ERR_EMPTY_RESPONSE
错误。在apache.log中我可以找到:
[Thu Jul 31 20:54:24.658848 2014] [core:notice] [pid 9797] AH00051: child pid 9814 exit signal Segmentation fault (11), possible coredump in /etc/apache2
根据涉及此事的其他stackoverflow问题,我通过gdb进行了回溯:
(gdb) attach 9797
(...)
0x00007ff3d584fc13 in __select_nocancel ()
at ../sysdeps/unix/syscall-template.S:81
81 ../sysdeps/unix/syscall-template.S: There's no such file or directory
(gdb) backtrace full
#0 0x00007ff3d584fc13 in __select_nocancel ()
at ../sysdeps/unix/syscall-template.S:81
No locals.
#1 0x00007ff3d5d66d65 in apr_sleep ()
from /usr/lib/x86_64-linux-gnu/libapr-1.so.0
No symbol table info available.
#2 0x00007ff3d663a401 in ap_wait_or_timeout ()
No symbol table info available.
#3 0x00007ff3d2e92076 in ?? ()
from /usr/lib/apache2/modules/mod_mpm_prefork.so
No symbol table info available.
#4 0x00007ff3d663998e in ap_run_mpm ()
No symbol table info available.
#5 0x00007ff3d6633166 in main ()
No symbol table info available.
(gdb)
不幸重新安装apache2,php5-mysql没有帮助。 PDO扩展可以工作,但我的所有脚本都基于mysqli。
答案 0 :(得分:0)
我使用此配置命令安装了最新的php(5.6.0RC3,因为我使用了开发预览版本):
./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=mysqlnd --with-mysqli=mysqlnd
不幸的是它没有交换旧的php5模块。在etc/apache2/mods-enabled/php5.load
我找到了加载的php模块:
LoadModule php5_module /usr/lib/apache2/modules/libphp5.so
我将此行改为newely compilled libphp5.so路径:
LoadModule php5_module /home/YourUsername/php-5.6.0RC3/libs/libphp5.so
但您也可以覆盖此文件以避免混乱。