Я использую следующую настройку:
Magento 1.9.3 on
Ubuntu 14.04 (Trusty-64) , которая работает в
Бродяга (VirtualBox 5.2)
Apache 2.4.7
PHP 5.5.9
IonCube
Xdebug
Вот как они загружаются: (из phpinfo)
Сканировать этот каталог на наличие дополнительных файлов .ini
/etc/php5/apache2/conf.d
проанализированы дополнительные файлы .ini
/etc/php5/apache2/conf.d/00-ioncube.ini, /etc/php5/apache2/conf.d/05-opcache.ini, /etc/php5/apache2/conf.d/10-pdo.ini , /etc/php5/apache2/conf.d/20-curl.ini, /etc/php5/apache2/conf.d/20-gd.ini, /etc/php5/apache2/conf.d/20-json. ini, /etc/php5/apache2/conf.d/20-mcrypt.ini, /etc/php5/apache2/conf.d/20-mysql.ini, /etc/php5/apache2/conf.d/20-mysqli .ini, /etc/php5/apache2/conf.d/20-pdo_mysql.ini, /etc/php5/apache2/conf.d/20-readline.ini, /etc/php5/apache2/conf.d/20- xdebug.ini
Все было установлено через apt-get install
Теперь, когда я загружаю страницу в magento, когда для PHPStorm установлено значение Прослушивание отладочных подключений PHP Я получаю сообщение об ошибке в Google Chrome после некоторой загрузки: ERR_EMPTY_RESPONSE
и я вижу что-то подобное в журнале ошибок apache:
[Thu Sep 13 09:19:18.419761 2018] [authz_core:debug] [pid 3264] mod_authz_core.c(802): [client 192.168.33.1:60193] AH01626: authorization result of Require all granted: granted
[Thu Sep 13 09:19:18.419812 2018] [authz_core:debug] [pid 3264] mod_authz_core.c(802): [client 192.168.33.1:60193] AH01626: authorization result of <RequireAny>: granted
[Thu Sep 13 09:19:18.421080 2018] [authz_core:debug] [pid 3264] mod_authz_core.c(802): [client 192.168.33.1:60193] AH01626: authorization result of Require all granted: granted
[Thu Sep 13 09:19:18.421122 2018] [authz_core:debug] [pid 3264] mod_authz_core.c(802): [client 192.168.33.1:60193] AH01626: authorization result of <RequireAny>: granted
[Thu Sep 13 09:19:46.606176 2018] [authz_core:debug] [pid 5493] mod_authz_core.c(802): [client 192.168.33.1:60249] AH01626: authorization result of Require all granted: granted
[Thu Sep 13 09:19:46.606233 2018] [authz_core:debug] [pid 5493] mod_authz_core.c(802): [client 192.168.33.1:60249] AH01626: authorization result of <RequireAny>: granted
[Thu Sep 13 09:19:46.607792 2018] [authz_core:debug] [pid 5493] mod_authz_core.c(802): [client 192.168.33.1:60249] AH01626: authorization result of Require all granted: granted
[Thu Sep 13 09:19:46.607825 2018] [authz_core:debug] [pid 5493] mod_authz_core.c(802): [client 192.168.33.1:60249] AH01626: authorization result of <RequireAny>: granted
[Thu Sep 13 09:19:47.393341 2018] [core:notice] [pid 1280] AH00051: child pid 3264 exit signal Segmentation fault (11), possible coredump in /etc/apache2
[Thu Sep 13 09:19:59.409385 2018] [core:notice] [pid 1280] AH00051: child pid 5493 exit signal Segmentation fault (11), possible coredump in /etc/apache2
[Thu Sep 13 09:20:04.013855 2018] [authz_core:debug] [pid 5548] mod_authz_core.c(802): [client 192.168.33.1:60275] AH01626: authorization result of Require all granted: granted
[Thu Sep 13 09:20:04.014052 2018] [authz_core:debug] [pid 5548] mod_authz_core.c(802): [client 192.168.33.1:60275] AH01626: authorization result of <RequireAny>: granted
[Thu Sep 13 09:20:04.018967 2018] [authz_core:debug] [pid 5548] mod_authz_core.c(802): [client 192.168.33.1:60275] AH01626: authorization result of Require all granted: granted
[Thu Sep 13 09:20:04.019015 2018] [authz_core:debug] [pid 5548] mod_authz_core.c(802): [client 192.168.33.1:60275] AH01626: authorization result of <RequireAny>: granted
Когда я отключаю это в PHPStorm, нажимая Остановить прослушивание отладочных соединений PHP все снова работает.
Я попробовал gdb, но, честно говоря, не понимая, что делать с информацией или правильно ли я ее использую. Возможно, информация все еще полезна.
Пример 1
(gdb) attach 5548
Attaching to program: /usr/sbin/apache2, process 5548
Reading symbols from /lib/x86_64-linux-gnu/libpcre.so.3...(no debugging symbols found)...done.
Loaded symbols for /lib/x86_64-linux-gnu/libpcre.so.3
Reading symbols from /usr/lib/x86_64-linux-gnu/libaprutil-1.so.0...(no debugging symbols found)...done.
Loaded symbols for /usr/lib/x86_64-linux-gnu/libaprutil-1.so.0
Reading symbols from /usr/lib/x86_64-linux-gnu/libapr-1.so.0...(no debugging symbols found)...done.
Loaded symbols for /usr/lib/x86_64-linux-gnu/libapr-1.so.0
Reading symbols from /lib/x86_64-linux-gnu/libpthread.so.0...Reading symbols from /usr/lib/debug//lib/x86_64-linux-gnu/libpthread-2.19.so...done.
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[....]
Reading symbols from /usr/lib/php5/20121212/mysqli.so...(no debugging symbols found)...done.
Loaded symbols for /usr/lib/php5/20121212/mysqli.so
Reading symbols from /usr/lib/php5/20121212/pdo_mysql.so...(no debugging symbols found)...done.
Loaded symbols for /usr/lib/php5/20121212/pdo_mysql.so
Reading symbols from /usr/lib/php5/20121212/readline.so...(no debugging symbols found)...done.
Loaded symbols for /usr/lib/php5/20121212/readline.so
Reading symbols from /usr/lib/x86_64-linux-gnu/libedit.so.2...(no debugging symbols found)...done.
Loaded symbols for /usr/lib/x86_64-linux-gnu/libedit.so.2
Reading symbols from /lib/x86_64-linux-gnu/libtinfo.so.5...(no debugging symbols found)...done.
Loaded symbols for /lib/x86_64-linux-gnu/libtinfo.so.5
Reading symbols from /lib/x86_64-linux-gnu/libgcc_s.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib/x86_64-linux-gnu/libgcc_s.so.1
0x00007fef9e409417 in access () at ../sysdeps/unix/syscall-template.S:81
81 ../sysdeps/unix/syscall-template.S: No such file or directory.
Первая часть, кажется, всегда одинакова, поэтому я сократил ее, хотя последние строки всегда разные.
Пример 2
[...]
Reading symbols from /lib/x86_64-linux-gnu/libgcc_s.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib/x86_64-linux-gnu/libgcc_s.so.1
0x00007fef9e418fab in __libc_recv (fd=14, buf=0x7ffc5f1d7a30, n=128, flags=-1) at ../sysdeps/unix/sysv/linux/x86_64/recv.c:33
33 ../sysdeps/unix/sysv/linux/x86_64/recv.c: No such file or directory.
или Пример 3
[...]
Reading symbols from /lib/x86_64-linux-gnu/libgcc_s.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib/x86_64-linux-gnu/libgcc_s.so.1
0x00007ffc5f1fcee5 in ?? ()
обратная трассировка для Пример 1 :
(gdb) backtrace
#0 0x00007fef9e409417 in access () at ../sysdeps/unix/syscall-template.S:81
#1 0x00007fef9b3be98b in ?? () from /usr/lib/apache2/modules/libphp5.so
#2 0x00007fef9b3bff4b in zif_file_exists () from /usr/lib/apache2/modules/libphp5.so
#3 0x00007fef9b2f6ad6 in phar_file_exists () from /usr/lib/apache2/modules/libphp5.so
#4 0x00007fef9b47810b in dtrace_execute_internal () from /usr/lib/apache2/modules/libphp5.so
#5 0x00007fef97d04476 in xdebug_execute_internal (current_execute_data=0x7fef9f3597b8, fci=0x0, return_value_used=1)
at /build/buildd/xdebug-2.2.3/xdebug-2.2.3/xdebug.c:1551
#6 0x00007fef9b537500 in ?? () from /usr/lib/apache2/modules/libphp5.so
#7 0x00007fef9b4b1e38 in execute_ex () from /usr/lib/apache2/modules/libphp5.so
#8 0x00007fef9b478009 in dtrace_execute_ex () from /usr/lib/apache2/modules/libphp5.so
#9 0x00007fef97d03a7c in xdebug_execute_ex (execute_data=0x7fef9f3597b8)
at /build/buildd/xdebug-2.2.3/xdebug-2.2.3/xdebug.c:1437
#10 0x00007fef983d480c in ?? () from /usr/lib/php5/20121212/ioncube_loader_lin_5.5.so
#11 0x00007fef9b537b50 in ?? () from /usr/lib/apache2/modules/libphp5.so
#12 0x00007fef9b4b1e38 in execute_ex () from /usr/lib/apache2/modules/libphp5.so
#13 0x00007fef9b478009 in dtrace_execute_ex () from /usr/lib/apache2/modules/libphp5.so
#14 0x00007fef97d03a7c in xdebug_execute_ex (execute_data=0x7fef9f359638)
at /build/buildd/xdebug-2.2.3/xdebug-2.2.3/xdebug.c:1437
#15 0x00007fef983d480c in ?? () from /usr/lib/php5/20121212/ioncube_loader_lin_5.5.so
#16 0x00007fef9b537b50 in ?? () from /usr/lib/apache2/modules/libphp5.so
#17 0x00007fef9b4b1e38 in execute_ex () from /usr/lib/apache2/modules/libphp5.so
#18 0x00007fef9b478009 in dtrace_execute_ex () from /usr/lib/apache2/modules/libphp5.so
#19 0x00007fef97d03a7c in xdebug_execute_ex (execute_data=0x7fef9f359418)
at /build/buildd/xdebug-2.2.3/xdebug-2.2.3/xdebug.c:1437
#20 0x00007fef983d480c in ?? () from /usr/lib/php5/20121212/ioncube_loader_lin_5.5.so
#21 0x00007fef9b537b50 in ?? () from /usr/lib/apache2/modules/libphp5.so
#22 0x00007fef9b4b1e38 in execute_ex () from /usr/lib/apache2/modules/libphp5.so
#23 0x00007fef9b478009 in dtrace_execute_ex () from /usr/lib/apache2/modules/libphp5.so
#24 0x00007fef97d03a7c in xdebug_execute_ex (execute_data=0x7fef9f3591a8)
at /build/buildd/xdebug-2.2.3/xdebug-2.2.3/xdebug.c:1437
#25 0x00007fef983d480c in ?? () from /usr/lib/php5/20121212/ioncube_loader_lin_5.5.so
#26 0x00007fef9b537b50 in ?? () from /usr/lib/apache2/modules/libphp5.so
#27 0x00007fef9b4b1e38 in execute_ex () from /usr/lib/apache2/modules/libphp5.so
#28 0x00007fef9b478009 in dtrace_execute_ex () from /usr/lib/apache2/modules/libphp5.so
#29 0x00007fef97d03a7c in xdebug_execute_ex (execute_data=0x7fef9f358ff8)
at /build/buildd/xdebug-2.2.3/xdebug-2.2.3/xdebug.c:1437
#30 0x00007fef983d480c in ?? () from /usr/lib/php5/20121212/ioncube_loader_lin_5.5.so
#31 0x00007fef9b537b50 in ?? () from /usr/lib/apache2/modules/libphp5.so
#32 0x00007fef9b4b1e38 in execute_ex () from /usr/lib/apache2/modules/libphp5.so
#33 0x00007fef9b478009 in dtrace_execute_ex () from /usr/lib/apache2/modules/libphp5.so
#34 0x00007fef97d03a7c in xdebug_execute_ex (execute_data=0x7fef9f358f00)
at /build/buildd/xdebug-2.2.3/xdebug-2.2.3/xdebug.c:1437
#35 0x00007fef983d480c in ?? () from /usr/lib/php5/20121212/ioncube_loader_lin_5.5.so
#36 0x00007fef9b537b50 in ?? () from /usr/lib/apache2/modules/libphp5.so
#37 0x00007fef9b4b1e38 in execute_ex () from /usr/lib/apache2/modules/libphp5.so
#38 0x00007fef9b478009 in dtrace_execute_ex () from /usr/lib/apache2/modules/libphp5.so
#39 0x00007fef97d03a7c in xdebug_execute_ex (execute_data=0x7fef9f358db8)
at /build/buildd/xdebug-2.2.3/xdebug-2.2.3/xdebug.c:1437
#40 0x00007fef983d480c in ?? () from /usr/lib/php5/20121212/ioncube_loader_lin_5.5.so
#41 0x00007fef9b537b50 in ?? () from /usr/lib/apache2/modules/libphp5.so
и для Пример 3
(gdb) backtrace
#0 0x00007ffc5f1fcee5 in ?? ()
#1 0x00007fefa2e22220 in ?? ()
#2 0x00007fef97f28300 in ?? () from /usr/lib/php5/20121212/xdebug.so
#3 0x00007fef9f35a918 in ?? ()
#4 0x00007fefa2e22220 in ?? ()
#5 0x00007fef9bc64540 in ?? () from /usr/lib/apache2/modules/libphp5.so
#6 0x00007fef9f35a918 in ?? ()
#7 0x00007fef9f35a918 in ?? ()
#8 0x00007fef97d1c27e in xdebug_get_utime () at /build/buildd/xdebug-2.2.3/xdebug-2.2.3/usefulstuff.c:190
#9 0x00007fef97d1343d in xdebug_add_stack_frame (zdata=0x7ffc5f1d24a0, zdata@entry=0x7fef9f35a918,
op_array=0x7fefa15dea28, type=type@entry=1)
at /build/buildd/xdebug-2.2.3/xdebug-2.2.3/xdebug_stack.c:1008
#10 0x00007fef97d043c4 in xdebug_execute_internal (current_execute_data=0x7fef9f35a918, fci=0x0,
return_value_used=1) at /build/buildd/xdebug-2.2.3/xdebug-2.2.3/xdebug.c:1520
#11 0x00007fef9b537500 in ?? () from /usr/lib/apache2/modules/libphp5.so
#12 0x00007fef9b4b1e38 in execute_ex () from /usr/lib/apache2/modules/libphp5.so
#13 0x00007fef9b478009 in dtrace_execute_ex () from /usr/lib/apache2/modules/libphp5.so
#14 0x00007fef97d03a7c in xdebug_execute_ex (execute_data=0x7fef9f35a918)
at /build/buildd/xdebug-2.2.3/xdebug-2.2.3/xdebug.c:1437
#15 0x00007fef983d480c in ?? () from /usr/lib/php5/20121212/ioncube_loader_lin_5.5.so
[...]
Очевидно, что это как-то вызвано xdebug, но поскольку весь смысл этой установки заключается в отладке экземпляра Magento, который является копией живой среды, я не могу ничего изменить в (части) этой установки.
Но я понятия не имею, как это исправить.