Xdebug запускается при исключении, но не в точках останова - PullRequest
0 голосов
/ 20 мая 2019

Выпуск

В настоящее время я занят разработкой веб-сайта на PHP с использованием VSCode. Я хотел бы удаленно отлаживать веб-сайт во время работы над ним, чтобы я установил Xdebug на сервере и PHP Debug на VS Code.

Я вижу из журналов Xdebug, что он успешно подключается к моей машине, но затем просто останавливается. Однако, если мой код выбрасывает и исключение, это немедленно ломается в VS Code без проблем. Так что я не уверен на 100%, почему это работает на исключениях, но не на точках останова

Я попытался удалить и сбросить все точки останова, я перезапустил apache, я открыл порты на брандмауэре, я попытался перезагрузить мой компьютер. Но все безрезультатно.

Я не совсем уверен, почему исключения создаются и запускаются в VS Code, а точки останова - нет. Буду признателен за любые отзывы!


Логи и конфигурации

В конфигурации моего виртуального хоста есть строка для активации Xdebug:

php_flag xdebug.remote_enable on

Моя конфигурация Xdebug:

zend_extension = /usr/lib/php/20160303/xdebug.so
xdebug.show_error_trace=1
xdebug.remote_autostart = 1
xdebug.remote_enable = 0
xdebug.remote_handler = dbgp
xdebug.remote_host = 197.159.61.250
xdebug.remote_log = /tmp/xdebug_remote.log
xdebug.remote_mode = req
xdebug.remote_port = 9000

Мой VSCode launch.json config:

{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [

        {
            "name": "Listen for XDebug",
            "type": "php",
            "request": "launch",
            "pathMappings": {
                "/var/www/portal.***.co.za": "D:/Projects/Work/***/*** Source/"
            },
            "port": 9000
        },
        {
            "name": "Launch currently open script",
            "type": "php",
            "request": "launch",
            "program": "${file}",
            "cwd": "${fileDirname}",
            "port": 9000
        }
    ]
}

Логи от Xdebug:

[20180] Log opened at 2019-05-20 07:21:57
[20180] I: Connecting to configured address/port: 197.***.**.***:9000.
[20180] I: Connected to client. :-)
[20180] -> <init xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" fileuri="file:///var/www/portal.***s.co.za/pages/user/reports/eventRaceReport.php" language="PHP" xdebug:language_version="7.1.27-1+ubuntu16.04.1+deb.sury.org+1" protocol_version="1.0" appid="20180"><engine version="2.7.1"><![CDATA[Xdebug]]></engine><author><![CDATA[Derick Rethans]]></author><url><![CDATA[https://xdebug.org]]></url><copyright><![CDATA[Copyright (c) 2002-2019 by Derick Rethans]]></copyright></init>
[20180]
[20180] <- breakpoint_list -i 1
[20180] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="breakpoint_list" transaction_id="1"></response>
[20180]
[20180] <- breakpoint_set -i 2 -t line -f d:/Projects/Work/***/***%20Source/pages/user/reports/eventRaceReport.php -n 167
[20180] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="breakpoint_set" transaction_id="2" id="201800001"></response>
[20180]
[20180] <- breakpoint_list -i 3
[20180] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="breakpoint_list" transaction_id="3"><breakpoint type="line" filename="file:///d:/Projects/Work/***/***%2520Source/pages/user/reports/eventRaceReport.php" lineno="167" state="enabled" hit_count="0" hit_value="0" id="201800001"></breakpoint></response>
[20180]
[20180] <- breakpoint_list -i 4
[20180] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="breakpoint_list" transaction_id="4"><breakpoint type="line" filename="file:///d:/Projects/Work/***/***%2520Source/pages/user/reports/eventRaceReport.php" lineno="167" state="enabled" hit_count="0" hit_value="0" id="201800001"></breakpoint></response>
[20180]
[20180] <- breakpoint_set -i 5 -t exception -x *
[20180] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="breakpoint_set" transaction_id="5" id="201800002"></response>
[20180]
[20180] <- run -i 6
[20180] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="run" transaction_id="6" status="stopping" reason="ok"></response>
[20180]
[20180] <- stop -i 7
[20180] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="stop" transaction_id="7" status="stopped" reason="ok"></response>
[20180]
[20180] Log closed at 2019-05-20 07:22:02
...