View Issue Details

IDProjectCategoryView StatusLast Update
0001768XdebugStep Debuggingpublic2020-07-14 17:03
Reporterkai Assigned Toderick  
PrioritynormalSeverityblockReproducibilityalways
Status resolvedResolutionno change required 
PlatformPCOSLinux CentOSOS Version8
Product Version2.9.3 
Summary0001768: XDEBUG ignored by browser invocation (CentOS 8 - nginx 1.14.1 - PHP 7.4.4 - php-fpm (using socket) - xdebug 2.9.3)
Description

What I expected to happen : my script to stop at breakpoint when invoked with XDEBUG parameter from the browser
What happened instead : it did not stop
How you can reproduce the problem: This would be asking too much. I kindly ask you to read through my setting and test an give me hint if you can.

System : CentOS Linux 8 4.18.0-147.5.1.el8_1.x86_64 #1 SMP Wed Feb 5 02:00:39 UTC 2020 x86_64
nginx : nginx/1.14.1
PHP : 7.4.4
Server API : FPM/FastCGI
Additional .ini files parsed: /etc/php.d/10-opcache.ini, ... /etc/php.d/20-xdebug.ini, ...

phpinfo() (works;-):
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with Zend OPcache v7.4.4, Copyright (c), by Zend Technologies
with Xdebug v2.9.3, Copyright (c) 2002-2020, by Derick Rethans

xdebug.idekey xdebug-atom xdebug-atom
xdebug.remote_port 9000 9000

/etc/nginx/nginx.conf : ... fastcgi_pass unix:/run/php-fpm/www.sock; ...

/etc/nginx/conf.d/php-fpm.conf: ... server unix:/run/php-fpm/www.sock; ...

/etc/php-fpm.d/www.conf :
user = www-data
group = www-data
listen = /run/php-fpm/www.sock
listen.owner = www-data
listen.group = www-data
listen.mode = 0660
catch_workers_output = yes

xdebug.so: build fully in accordance with your "Installation Wizard"
/etc/php.d/20-xdebug.ini
zend_extension = "/usr/lib64/php/modules/xdebug.so"
xdebug.remote_log = "/tmp/xdebug.log"
xdebug.profiler_enable = 0
xdebug.remote_enable = true
xdebug.remote_host = localhost
xdebug.remote_port = 9000
xdebug.remote_mode = req
xdebug.remote_autostart = false
xdebug.remote_connect_back = false
xdebug.idekey = "xdebug-atom"

IDE: atom 1.45.0
listening on address:port *:9000

output of <?php var_export($_SERVER);?> in browser (works;-):
array ( 'USER' => 'www-data', 'HOME' => '/home/www-data', 'HTTP_CACHE_CONTROL' => 'max-age=0', 'HTTP_UPGRADE_INSECURE_REQUESTS' => '1', 'HTTP_COOKIE' => 'XDEBUG_SESSION=', 'HTTP_CONNECTION' => 'keep-alive', 'HTTP_ACCEPT_ENCODING' => 'gzip, deflate', 'HTTP_ACCEPT_LANGUAGE' => 'de,en-US;q=0.7,en;q=0.3', 'HTTP_ACCEPT' => 'text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8', 'HTTP_USER_AGENT' => 'Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0', 'HTTP_HOST' => 'localhost', 'REDIRECT_STATUS' => '200', 'SERVER_NAME' => 'localhost', 'SERVER_PORT' => '80', 'SERVER_ADDR' => '127.0.0.1', 'REMOTE_PORT' => '37420', 'REMOTE_ADDR' => '127.0.0.1', 'SERVER_SOFTWARE' => 'nginx/1.14.1', 'GATEWAY_INTERFACE' => 'CGI/1.1', 'REQUEST_SCHEME' => 'http', 'SERVER_PROTOCOL' => 'HTTP/1.1', 'DOCUMENT_ROOT' => '/usr/src/edelwize/html', 'DOCUMENT_URI' => '/the-demo.galantus.com/test.php', 'REQUEST_URI' => '/the-demo.galantus.com/test.php?XDEBUG_SESSION_START=debug-atom', 'SCRIPT_NAME' => '/the-demo.galantus.com/test.php', 'CONTENT_LENGTH' => '', 'CONTENT_TYPE' => '', 'REQUEST_METHOD' => 'GET', 'QUERY_STRING' => 'XDEBUG_SESSION_START=debug-atom', 'SCRIPT_FILENAME' => '/usr/src/edelwize/html/the-demo.galantus.com/test.php', 'FCGI_ROLE' => 'RESPONDER', 'PHP_SELF' => '/the-demo.galantus.com/test.php', 'REQUEST_TIME_FLOAT' => 1584897647.202548, 'REQUEST_TIME' => 1584897647, )

testing breakpoint with test.php = <?php var_export($_SERVER); \n <breakpoint> $a=1; \n $b=1;?>
1.) terminal:
su www-data
cd /usr/src/edelwize/html/the-demo.galantus.com
export XDEBUG_CONFIG="idekey=xdebug-atom"
php test.php

WORKS PERFECTLY! But unfortunalely useless for debugguing a web application ...

xdebug.log:

[15869] Log opened at 2020-03-22 18:08:04
[15869] I: Connecting to configured address/port: localhost:9000.
[15869] I: Connected to client. :-)
[15869] -> <init xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" fileuri="file:///usr/src/edelwize/html/the-demo.galantus.com/test.php" language="PHP" xdebug:language_version="7.4.4" protocol_version="1.0" appid="15869" idekey="session_name"><engine version="2.9.3"><![CDATA[Xdebug]]></engine><author><![CDATA[Derick Rethans]]></author><url><![CDATA[https://xdebug.org]]></url><copyright><![CDATA[Copyright (c) 2002-2020 by Derick Rethans]]></copyright></init>

[15869] <- feature_set -i 1 -n "show_hidden" -v 1
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="feature_set" transaction_id="1" feature="show_hidden" success="1"></response>

[15869] <- feature_get -i 2 -n "supported_encodings"
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="feature_get" transaction_id="2" feature_name="supported_encodings" supported="1"><![CDATA[iso-8859-1]]></response>

[15869] <- feature_get -i 3 -n "supports_async"
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="feature_get" transaction_id="3" feature_name="supports_async" supported="1"><![CDATA[0]]></response>

[15869] <- feature_set -i 4 -n "encoding" -v "UTF-8"
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="feature_set" transaction_id="4" status="starting" reason="ok"><error code="900"><message><![CDATA[encoding not supported]]></message></error></response>

[15869] <- feature_set -i 5 -n "max_depth" -v 4
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="feature_set" transaction_id="5" feature="max_depth" success="1"></response>

[15869] <- feature_set -i 6 -n "max_data" -v 1024
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="feature_set" transaction_id="6" feature="max_data" success="1"></response>

[15869] <- feature_set -i 7 -n "max_children" -v 32
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="feature_set" transaction_id="7" feature="max_children" success="1"></response>

[15869] <- feature_set -i 8 -n "multiple_sessions" -v 0
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="feature_set" transaction_id="8" feature="multiple_sessions" success="1"></response>

[15869] <- stdout -i 9 -c "stdout"
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="stdout" transaction_id="9" success="1"></response>

[15869] <- stderr -i 10 -c "stderr"
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="stderr" transaction_id="10" success="0"></response>

[15869] <- breakpoint_set -i 11 -t "line" -f "file:///usr/src/edelwize/html/the-demo.galantus.com/test.php" -n 9
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="breakpoint_set" transaction_id="11" id="158690001"></response>

[15869] <- breakpoint_set -i 12 -t "line" -f "file:///usr/src/edelwize/html/the-demo.galantus.com/index.php" -n 1
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="breakpoint_set" transaction_id="12" id="158690002"></response>

[15869] <- breakpoint_set -i 13 -t "exception" -x "Fatal error"
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="breakpoint_set" transaction_id="13" id="158690003"></response>

[15869] <- breakpoint_set -i 14 -t "exception" -x "Catchable fatal error"
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="breakpoint_set" transaction_id="14" id="158690004"></response>

[15869] <- breakpoint_set -i 15 -t "exception" -x "Warning"
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="breakpoint_set" transaction_id="15" id="158690005"></response>

[15869] <- breakpoint_set -i 16 -t "exception" -x "Strict standards"
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="breakpoint_set" transaction_id="16" id="158690006"></response>

[15869] <- breakpoint_set -i 17 -t "exception" -x "Xdebug"
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="breakpoint_set" transaction_id="17" id="158690007"></response>

[15869] <- breakpoint_set -i 18 -t "exception" -x "Unknown error"
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="breakpoint_set" transaction_id="18" id="158690008"></response>

[15869] <- breakpoint_set -i 19 -t "exception" -x "Notice"
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="breakpoint_set" transaction_id="19" id="158690009"></response>

[15869] <- source -i 20 -f "file:///usr/src/edelwize/html/the-demo.galantus.com/test.php" -b 1 -e 1
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="source" transaction_id="20" encoding="base64"><![CDATA[PCFkb2N0eXBlIGh0bWw+Cg==]]></response>

[15869] <- source -i 21 -f "file:///usr/src/edelwize/html/the-demo.galantus.com/index.php" -b 1 -e 1
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="source" transaction_id="21" encoding="base64"><![CDATA[PD9waHAK]]></response>

[15869] <- run -i 22
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="run" transaction_id="22" status="break" reason="ok"><xdebug:message filename="file:///usr/src/edelwize/html/the-demo.galantus.com/test.php" lineno="9"></xdebug:message></response>

[15869] <- context_names -i 23
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="context_names" transaction_id="23"><context name="Locals" id="0"></context><context name="Superglobals" id="1"></context><context name="User defined constants" id="2"></context></response>

[15869] <- context_get -i 24 -c "0"
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="context_get" transaction_id="24" context="0"><property name="$a" fullname="$a" type="uninitialized"></property><property name="$b" fullname="$b" type="uninitialized"></property><property name="$c" fullname="$c" type="uninitialized"></property></response>

[15869] <- context_get -i 25 -c "1"
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="context_get" transaction_id="25" context="1"><property name="$_COOKIE" fullname="$_COOKIE" type="array" children="0" numchildren="0" page="0" pagesize="32"></property><property name="$_ENV" fullname="$_ENV" type="array" children="0" numchildren="0" page="0" pagesize="32"></property><property name="$_FILES" fullname="$_FILES" type="array" children="0" numchildren="0" page="0" pagesize="32"></property><property name="$_GET" fullname="$_GET" type="array" children="0" numchildren="0" page="0" pagesize="32"></property><property name="$_POST" fullname="$_POST" type="array" children="0" numchildren="0" page="0" pagesize="32"></property><property name="$_REQUEST" fullname="$_REQUEST" type="array" children="0" numchildren="0" page="0" pagesize="32"></property><property name="$_SERVER" fullname="$_SERVER" type="array" children="1" numchildren="32" page="0" pagesize="32"><property name="LS_COLORS" fullname="$_SERVER["LS_COLORS"]" type="string" size="1779" encoding="base64"><![CDATA[cnM9MDpkaT0zODs1OzMzOmxuPTM4OzU7NTE6bWg9MDA6cGk9NDA7Mzg7NTsxMTpzbz0zODs1OzEzOmRvPTM4OzU7NTpiZD00ODs1OzIzMjszODs1OzExOmNkPTQ4OzU7MjMyOzM4OzU7Mzpvcj00ODs1OzIzMjszODs1Ozk6bWk9MDE7MDU7Mzc7NDE6c3U9NDg7NTsxOTY7Mzg7NTsxNTpzZz00ODs1OzExOzM4OzU7MTY6Y2E9NDg7NTsxOTY7Mzg7NTsyMjY6dHc9NDg7NTsxMDszODs1OzE2Om93PTQ4OzU7MTA7Mzg7NTsyMTpzdD00ODs1OzIxOzM4OzU7MTU6ZXg9Mzg7NTs0MDoqLnRhcj0zODs1Ozk6Ki50Z3o9Mzg7NTs5OiouYXJjPTM4OzU7OToqLmFyaj0zODs1Ozk6Ki50YXo9Mzg7NTs5OioubGhhPTM4OzU7OToqLmx6ND0zODs1Ozk6Ki5semg9Mzg7NTs5OioubHptYT0zODs1Ozk6Ki50bHo9Mzg7NTs5OioudHh6PTM4OzU7OToqLnR6bz0zODs1Ozk6Ki50N3o9Mzg7NTs5OiouemlwPTM4OzU7OToqLno9Mzg7NTs5OiouZHo9Mzg7NTs5OiouZ3o9Mzg7NTs5OioubHJ6PTM4OzU7OToqLmx6PTM4OzU7OToqLmx6bz0zODs1Ozk6Ki54ej0zODs1Ozk6Ki56c3Q9Mzg7NTs5OioudHpzdD0zODs1Ozk6Ki5iejI9Mzg7NTs5OiouYno9Mzg7NTs5OioudGJ6PTM4OzU7OToqLnRiejI9Mzg7NTs5OioudHo9Mzg7NTs5OiouZGViPTM4OzU7OToqLnJwbT0zODs1Ozk6Ki5qYXI9Mzg7NTs5Oioud2FyPTM4OzU7OToqLmVhcj0zODs1Ozk6Ki5zYXI9Mzg7NTs5OioucmFyPTM4OzU7OToqLmFsej0zODs1Ozk6Ki5hY2U9Mzg7NTs5Oiouem9vPTM4OzU7OToqLmNwaW89Mzg7NTs5OiouN3o9Mzg7NTs5Oioucno9Mzg7NTs5OiouY2FiPTM4OzU7OToqLndpbT0zODs1Ozk6Ki5zd209Mzg7NTs5OiouZHdtPTM4OzU7OToqLmVzZD0zODs1Ozk6Ki5qcGc9Mzg7NTsxMzoqLmpwZWc9Mzg7NTsxMzoqLm1qcGc9Mzg7NTsxMzoqLm1qcGVnPTM4OzU7MTM6Ki5naWY9Mzg7NTsxMzoqLmJtcD0zODs1OzEzOioucGJtPTM4OzU7MTM6Ki5wZ209Mzg7NTsxMzoqLnBwbT0zODs1OzEzOioudGdhPTM4OzU7MTM6Ki54Ym09Mzg7NTsxMzoqLnhwbQ==]]></property><property name="LANG" fullname="$_SERVER["LANG"]" type="string" size="11" encoding="base64"><![CDATA[ZGVfREUuVVRGLTg=]]></property><property name="DISPLAY" fullname="$_SERVER["DISPLAY"]" type="string" size="2" encoding="base64"><![CDATA[OjE=]]></property><property name="SUDO_GID" fullname="$_SERVER["SUDO_GID"]" type="string" size="4" encoding="base64"><![CDATA[MTAwMA==]]></property><property name="OLDPWD" fullname="$_SERVER["OLDPWD"]" type="string" size="44" encoding="base64"><![CDATA[L3Vzci9zcmMvZWRlbHdpemUvaHRtbC90aGUtZGVtby5nYWxhbnR1cy5jb20=]]></property><property name="COLORTERM" fullname="$_SERVER["COLORTERM"]" type="string" size="9" encoding="base64"><![CDATA[dHJ1ZWNvbG9y]]></property><property name="USERNAME" fullname="$_SERVER["USERNAME"]" type="string" size="3" encoding="base64"><![CDATA[a2Fp]]></property><property name="SUDO_COMMAND" fullname="$_SERVER["SUDO_COMMAND"]" type="string" size="9" encoding="base64"><![CDATA[L2Jpbi9iYXNo]]></property><property name="USER" fullname="$_SERVER["USER"]" type="string" size="8" encoding="base64"><![CDATA[d3d3LWRhdGE=]]></property><property name="PWD" fullname="$_SERVER["PWD"]" type="string" size="44" encoding="base64"><![CDATA[L3Vzci9zcmMvZWRlbHdpemUvaHRtbC90aGUtZGVtby5nYWxhbnR1cy5jb20=]]></property><property name="HOME" fullname="$_SERVER["HOME"]" type="string" size="14" encoding="base64"><![CDATA[L2hvbWUvd3d3LWRhdGE=]]></property><property name="SUDO_USER" fullname="$_SERVER["SUDO_USER"]" type="string" size="3" encoding="base64"><![CDATA[a2Fp]]></property><property name="XDG_DATA_DIRS" fullname="$_SERVER["XDG_DATA_DIRS"]" type="string" size="99" encoding="base64"><![CDATA[L3Jvb3QvLmxvY2FsL3NoYXJlL2ZsYXRwYWsvZXhwb3J0cy9zaGFyZTovdmFyL2xpYi9mbGF0cGFrL2V4cG9ydHMvc2hhcmU6L3Vzci9sb2NhbC9zaGFyZTovdXNyL3NoYXJl]]></property><property name="SUDO_UID" fullname="$_SERVER["SUDO_UID"]" type="string" size="4" encoding="base64"><![CDATA[MTAwMA==]]></property><property name="MAIL" fullname="$_SERVER["MAIL"]" type="string" size="14" encoding="base64"><![CDATA[L3Zhci9tYWlsL3Jvb3Q=]]></property><property name="TERM" fullname="$_SERVER["TERM"]" type="string" size="14" encoding="base64"><![CDATA[eHRlcm0tMjU2Y29sb3I=]]></property><property name="SHELL" fullname="$_SERVER["SHELL"]" type="string" size="9" encoding="base64"><![CDATA[L2Jpbi9iYXNo]]></property><property name="XDEBUG_CONFIG" fullname="$_SERVER["XDEBUG_CONFIG"]" type="string" size="19" encoding="base64"><![CDATA[aWRla2V5PXNlc3Npb25fbmFtZQ==]]></property><property name="SHLVL" fullname="$_SERVER["SHLVL"]" type="string" size="1" encoding="base64"><![CDATA[Mg==]]></property><property name="LOGNAME" fullname="$_SERVER["LOGNAME"]" type="string" size="8" encoding="base64"><![CDATA[d3d3LWRhdGE=]]></property><property name="PATH" fullname="$_SERVER["PATH"]" type="string" size="74" encoding="base64"><![CDATA[L2hvbWUvd3d3LWRhdGEvLmxvY2FsL2JpbjovaG9tZS93d3ctZGF0YS9iaW46L3NiaW46L2JpbjovdXNyL3NiaW46L3Vzci9iaW4=]]></property><property name="LESSOPEN" fullname="$SERVER["LESSOPEN"]" type="string" size="25" encoding="base64"><![CDATA[fHwvdXNyL2Jpbi9sZXNzcGlwZS5zaCAlcw==]]></property><property name="" fullname="$SERVER[""]" type="string" size="8" encoding="base64"><![CDATA[L2Jpbi9waHA=]]></property><property name="PHP_SELF" fullname="$_SERVER["PHP_SELF"]" type="string" size="8" encoding="base64"><![CDATA[dGVzdC5waHA=]]></property><property name="SCRIPT_NAME" fullname="$_SERVER["SCRIPT_NAME"]" type="string" size="8" encoding="base64"><![CDATA[dGVzdC5waHA=]]></property><property name="SCRIPT_FILENAME" fullname="$_SERVER["SCRIPT_FILENAME"]" type="string" size="8" encoding="base64"><![CDATA[dGVzdC5waHA=]]></property><property name="PATH_TRANSLATED" fullname="$_SERVER["PATH_TRANSLATED"]" type="string" size="8" encoding="base64"><![CDATA[dGVzdC5waHA=]]></property><property name="DOCUMENT_ROOT" fullname="$_SERVER["DOCUMENT_ROOT"]" type="string" size="0" encoding="base64"><![CDATA[]]></property><property name="REQUEST_TIME_FLOAT" fullname="$_SERVER["REQUEST_TIME_FLOAT"]" type="float"><![CDATA[1584900484.2536]]></property><property name="REQUEST_TIME" fullname="$_SERVER["REQUEST_TIME"]" type="int"><![CDATA[1584900484]]></property><property name="argv" fullname="$_SERVER["argv"]" type="array" children="1" numchildren="1" page="0" pagesize="32"><property name="0" fullname="$_SERVER["argv"][0]" type="string" size="8" encoding="base64"><![CDATA[dGVzdC5waHA=]]></property></property><property name="argc" fullname="$_SERVER["argc"]" type="int"><![CDATA[1]]></property></property></response>

[15869] <- context_get -i 26 -c "2"
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="context_get" transaction_id="26" context="2"></response>

[15869] <- stack_get -i 27
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="stack_get" transaction_id="27"><stack where="{main}" level="0" type="file" filename="file:///usr/src/edelwize/html/the-demo.galantus.com/test.php" lineno="9"></stack></response>

[15869] <- run -i 28
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="run" transaction_id="28" status="stopping" reason="ok"></response>

[15869] <- stop -i 29
[15869] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="stop" transaction_id="29" status="stopped" reason="ok"></response>

[15869] Log closed at 2020-03-22 18:08:10

2.) browser: http://localhost/the-demo.galantus.com/test.php?XDEBUG_SESSION_START=debug-atom

executes php code & generates the output but NEVER EVER stops at the breakpoint in the IDE. What am I doing wrong?

xdebug.log:
   nothing is written - xdebug obviously is not being invoked at all
   no error is written to </var/log/php-fpm/error.log> or </var/log/nginx/error.log>

"I have reached the end of my latin" (german saying) and I would appreciate any help really much!
Thanks in advance,
Kai

Steps To Reproduce

see "Beschreibung"

Additional Information

see "Beschreibung"

TagsDoesn't Break
Attached Files
Operating SystemCentOS 8
PHP Version7.4.0-7.4.4

Activities

derick

2020-03-22 19:31

administrator   ~0005322

(This is unlikely a bug)

What does the Xdebug section of phpinfo(); as seen through your browser look like? And is there an Xdebug section at all?

kai

2020-03-22 19:58

reporter   ~0005325

Absolutely - it's all there:
(I also still suspect it's a configuration problem. But maybe, as I am using the latest version of all components, I may have run into a new incompatibility ...)

xdebug
xdebug support enabled
Version 2.9.3
Support Xdebug on Patreon, GitHub, or as a business
Debugger enabled
IDE Key xdebug-atom
Directive Local Value Master Value
xdebug.auto_trace Off Off
xdebug.cli_color 0 0
xdebug.collect_assignments Off Off
xdebug.collect_includes On On
xdebug.collect_params 0 0
xdebug.collect_return Off Off
xdebug.collect_vars Off Off
xdebug.coverage_enable On On
xdebug.default_enable On On
xdebug.dump.COOKIE no value no value
xdebug.dump.ENV no value no value
xdebug.dump.FILES no value no value
xdebug.dump.GET no value no value
xdebug.dump.POST no value no value
xdebug.dump.REQUEST no value no value
xdebug.dump.SERVER no value no value
xdebug.dump.SESSION no value no value
xdebug.dump_globals On On
xdebug.dump_once On On
xdebug.dump_undefined Off Off
xdebug.file_link_format no value no value
xdebug.filename_format no value no value
xdebug.force_display_errors Off Off
xdebug.force_error_reporting 0 0
xdebug.gc_stats_enable Off Off
xdebug.gc_stats_output_dir /tmp /tmp
xdebug.gc_stats_output_name gcstats.%p gcstats.%p
xdebug.halt_level 0 0
xdebug.idekey xdebug-atom xdebug-atom
xdebug.max_nesting_level 256 256
xdebug.max_stack_frames -1 -1
xdebug.overload_var_dump 2 2
xdebug.profiler_append Off Off
xdebug.profiler_enable Off Off
xdebug.profiler_enable_trigger Off Off
xdebug.profiler_enable_trigger_value no value no value
xdebug.profiler_output_dir /tmp /tmp
xdebug.profiler_output_name cachegrind.out.%p cachegrind.out.%p
xdebug.remote_addr_header no value no value
xdebug.remote_autostart Off Off
xdebug.remote_connect_back Off Off
xdebug.remote_cookie_expire_time 3600 3600
xdebug.remote_enable On On
xdebug.remote_host localhost localhost
xdebug.remote_log /tmp/xdebug.log /tmp/xdebug.log
xdebug.remote_log_level 10 10
xdebug.remote_mode req req
xdebug.remote_port 9000 9000
xdebug.remote_timeout 200 200
xdebug.scream Off Off
xdebug.show_error_trace Off Off
xdebug.show_exception_trace Off Off
xdebug.show_local_vars Off Off
xdebug.show_mem_delta Off Off
xdebug.trace_enable_trigger Off Off
xdebug.trace_enable_trigger_value no value no value
xdebug.trace_format 0 0
xdebug.trace_options 0 0
xdebug.trace_output_dir /tmp /tmp
xdebug.trace_output_name trace.%c trace.%c
xdebug.var_display_max_children 128 128
xdebug.var_display_max_data 512 512
xdebug.var_display_max_depth 3 3

kai

2020-03-22 20:05

reporter   ~0005326

I also changed the port number of the IDE and xdebug to an unused port because I have read that php-fpm uses port #9000, too. But no effect. As I'm using a socket for php-fpm, this shouldn't be a problem anyway.

derick

2020-03-28 14:08

administrator   ~0005357

In general, if there is nothing in the remote_log file, it is either because 1. it couldn't be written to; 2. it's in a /tmp/systemd-private-*/ directory, or 3. Xdebug never saw the request for debugging to be activated.

Did you try using one of the browser extensions (https://xdebug.org/docs/remote#browser-extensions) instead of the URL parameter?
Can you try turning xdebug.remote_autoconnect on and see what happens?

kai

2020-03-28 17:45

reporter   ~0005359

Hi Derick, here are my findings:

  1. it couldn't be written to: "cd /tmp => su www-data => touch xdebug.log" works perfectly. "php test.php" creates and writes a log file. So I guess it's not a privilege problem.
  2. it's in a /tmp/systemd-private-*/ directory: there is a directory "systemd-private-5ef57f9171bb4e7bae149746c09153fa-httpd.service-05Q2Wc", but it's empty an it doesn't say anything to me
  3. Xdebug never saw the request for debugging to be activated: here is the root cause I suspect. But why, against all odds?

Did you try using one of the browser extensions (https://xdebug.org/docs/remote#browser-extensions) instead of the URL parameter?
Yes, I did. The cookie sent is <XDEBUG_SESSION xdeebug-atom> => no impact on my problem

Can you try turning xdebug.remote_autoconnect on and see what happens?
i tried: <xdebug.remote_autoconnect> seems to be undocumented, but still I added it to <20-xdebug.ini> and also modfied the parameters <xdebug.remote_autostart> and <xdebug.remote_connect_back>
to any combination, restarted the web server and php-fpm and verified the impact with php-info() => no impact on my problem

What else did I try:

  • using ip:port instead of a socket for php-fpm: => no impact on my problem
  • changing the port number to <> 9000 => no impact on my problem
  • using apache instead of nginx=> no impact on my problem

All over the internet there are only two causes of my problem:

  • a port collision between php-fpm and xdebug (9000)
  • a setting in phpstorm (that I do not use) disallowing remote connections

I really have no idea left to solve my problem ...

derick

2020-04-03 09:19

administrator   ~0005364

I'm baffled by this. I can't see a way why this doesn't work either. And the only way I can think of to debug this, is by single step debugging through PHP and Xdebug with a c-level debugger. That's a bit too tricky to explain over text though.

As a punt, could you see whether Xdebug works with you use PHP's built-in web server? (The "php -S" approach) I would run this from your document root with the following arguments:

php -n -dzend_extension=xdebug.so -dxdebug.remote_enable=1 -dxdebug.remote_autostart=1 -dxdebug.remote_log=/tmp/xdebug.log -S localhost:9111

-n disables all php.ini options, so if you load other extensions, you need to add -dextension=extension-name.so for each of them. You should be able to go to http://localhost:9111/ in your browser then, and a debug session should immediately start (as long as PhpStorm is "Listening for connections"). If not, the log at /tmp/xdebug.log should have info as to why a connection can't be made.

kai

2020-04-10 10:45

reporter   ~0005381

Hello Derick,

by now I have changed my strategy and moved on to a containerized version of my whole environment. It's not that I'm not stuck with problems there, too, but I believe this will be the future of development and deployment, so I will continue on this track. Right now I am unable to serve you with the results of your proposed approach. But I will consider your punt and be back when I am stuck with xdebug again. (Hopefully not;-)
Feel free to close this issue.

derick

2020-04-16 11:05

administrator   ~0005393

Okay, thanks for letting me know. If this shows up again, please feel free to file a new issue.

zepho

2020-07-14 11:30

reporter   ~0005425

Hey derick and kai,

I have the very same problem on Fedora32: Triggering via CLI works as usual, but not via webserver.

Tried also via curl, to be sure:
<code>
curl -I --cookie "XDEBUG_SESSION=PHPSTORM;path=/;" localhost
</code>

Attached is a screen shot of my php config. Additional this is my xdebug config:
<code>
xdebug.default_enable = 1
xdebug.remote_autostart = 1
xdebug.remote_host = "localhost"
xdebug.remote_log = /tmp/xdebug_remote.log
xdebug.remote_connect_back=1
xdebug.remote_enable=1
xdebug.remote_port=9000
xdebug.max_nesting_level=300
xdebug.idekey="PHPSTORM"

#see https://bugs.xdebug.org/view.php?id=1768
xdebug.remote_autoconnect=1
</code>

What I tried so far, but did not work:

  • Using nginx
  • Using apache-php-mod
  • also moved from socket to tcp (and back)

Apart from containers are not the future (they are already the new normal), I would not say this issue is resolved by avoiding it. I am investigating here and will report back. Therefore could you reopen this issue please @derick?

zepho

2020-07-14 11:52

reporter   ~0005426

Quick one: SELinux was in the way somehow.

After I set SELinux to permissive mode and rebooted everything went back to normal -> it works again!

If I would have looked into my logs this wouldn't have cost me hours:

Jul 14 13:34:08 localhost.localdomain audit[83451]: AVC avc: denied { name_connect } for pid=83451 comm="php-fpm" dest=9000 scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:object_r:http_port_t:s0 tclass=tcp_socket permissive=0
Jul 14 13:34:08 localhost.localdomain audit[83449]: AVC avc: denied { name_connect } for pid=83449 comm="php-fpm" dest=9000 scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:object_r:http_port_t:s0 tclass=tcp_socket permissive=0
Jul 14 13:34:14 localhost.localdomain audit[83452]: AVC avc: denied { name_connect } for pid=83452 comm="php-fpm" dest=9000 scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:object_r:http_port_t:s0 tclass=tcp_socket permissive=0
Jul 14 13:34:15 localhost.localdomain audit[83453]: AVC avc: denied { name_connect } for pid=83453 comm="php-fpm" dest=9000 scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:object_r:http_port_t:s0 tclass=tcp_socket permissive=0
Jul 14 13:34:20 localhost.localdomain audit[83450]: AVC avc: denied { name_connect } for pid=83450 comm="php-fpm" dest=9000 scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:object_r:http_port_t:s0 tclass=tcp_socket permissive=0
Jul 14 13:34:20 localhost.localdomain audit[83451]: AVC avc: denied { name_connect } for pid=83451 comm="php-fpm" dest=9000 scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:object_r:http_port_t:s0 tclass=tcp_socket permissive=0

Shame on me :)

zepho

2020-07-14 16:15

reporter   ~0005427

To anyone who is coming here. Shame, shame, shame & read the manual: https://xdebug.org/docs/faq (third point)

:)

kai

2020-07-14 17:03

reporter   ~0005428

"Apart from containers are not the future (they are already the new normal), I would not say this issue is resolved by avoiding it." => I agree with you completely, but depending on one's individual situation, sometimes the second best solution is the right one.
Your solution is extremely likely to fit for me, too. Thanks!

Issue History

Date Modified Username Field Change
2020-03-22 18:55 kai New Issue
2020-03-22 18:55 kai Tag Attached: Doesn't Break
2020-03-22 19:31 derick Assigned To => derick
2020-03-22 19:31 derick Status new => feedback
2020-03-22 19:31 derick Note Added: 0005322
2020-03-22 19:58 kai Note Added: 0005325
2020-03-22 19:58 kai Status feedback => assigned
2020-03-22 20:05 kai Note Added: 0005326
2020-03-28 14:08 derick Status assigned => feedback
2020-03-28 14:08 derick Note Added: 0005357
2020-03-28 17:45 kai Note Added: 0005359
2020-03-28 17:45 kai Status feedback => assigned
2020-04-03 09:19 derick Status assigned => feedback
2020-04-03 09:19 derick Note Added: 0005364
2020-04-10 10:45 kai Note Added: 0005381
2020-04-10 10:45 kai Status feedback => assigned
2020-04-16 11:05 derick Status assigned => resolved
2020-04-16 11:05 derick Resolution open => no change required
2020-04-16 11:05 derick Note Added: 0005393
2020-07-14 11:30 zepho File Added: Screenshot_2020-07-14 PHP 7 4 7 - phpinfo()(1).png
2020-07-14 11:30 zepho Note Added: 0005425
2020-07-14 11:52 zepho Note Added: 0005426
2020-07-14 16:15 zepho Note Added: 0005427
2020-07-14 17:03 kai Note Added: 0005428