I have been unable to get xdebug working with VS.php (version 2.4.1.4263). I am using an external webserver and the xdebug module is enabled. When I place a breakpoint in my page code and run the page, the IDE does not stop at the breakpoint but just renders the page as usual. I have enabled logging in xdebug and below is the output when I run a simple page with a breakpoint set. What am I doing wrong?

Thanks

Dan

Log output:

Log opened at 2008-01-15 08:38:03
-> <init xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" fileuri="file:///D:/websitedev/debugtest/DebugTest/debugtest.php" language="PHP" protocol_version="1.0" appid="1976" idekey="3"><engine version="2.0.2"><![CDATA[Xdebug]]></engine><author><![CDATA[Derick Rethans]]></author><url><![CDATA[http://xdebug.org]]></url><copyright><![CDATA[Copyright (c) 2002-2007 by Derick Rethans]]></copyright></init>

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

<- feature_get -i transaction_id -n notify_ok
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="feature_get" transaction_id="transaction_id" feature_name="notify_ok" supported="0"><![CDATA[0]]></response>

<- stdout -i 3 -c 1
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="stdout" transaction_id="3" success="1"></response>

<- stderr -i 4 -c 1
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="stderr" transaction_id="4" success="0"></response>

<- breakpoint_set -t exception -x "Fatal error" -i 5
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="breakpoint_set" transaction_id="5" id="19760005"></response>

<- breakpoint_set -t exception -x "Parse error" -i 6
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="breakpoint_set" transaction_id="6" id="19760006"></response>

<- breakpoint_set -t exception -x "Unknown error" -i 7
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="breakpoint_set" transaction_id="7" id="19760007"></response>

<- breakpoint_set -i 8 -t line -f file://D:/websitedev/debugtest/DebugTest/debugtest.php -n 4 -r 0
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="breakpoint_set" transaction_id="8" id="19760008"></response>

<- run -i 9
-> <stream xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" type="stdout" encoding="base64"><![CDATA[dGVzdA==]]></stream>

-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="run" transaction_id="9" status="stopped" reason="ok"></response>

<- stop -i 10

juanc says:

Is the web server running locally or remote?

danspam says:

Apache, running on the same machine, so locally

juanc says:

The logs look fine. I'm wondering why XDebug is not notifying VS.Php of a breakpoint. I wonder if the breakpoint is on a line that can't break. Could this be?

Are you seen this issue with all breakpoints?

danspam says:

Could not believe it. Today I try again and it works fine. Strange...I just have to keep my eye on it..

Thanks for your help.

gdeconto says:

I just upgraded to 2.4.1.4263 (had 2.3.6.4068 installed previously) and am experiencing the same problem; when I set the debugger to Xdebug, the breakpoints are not being hit.

I dont see any PHP.INI file changes from the VS.PHP upgrade (ie no xdebug lines/etc)

I have restarted Apache, etc but problem persists.

If I want to use xdebug, what changes should exist in file, and what other system changes should have been made (ie what xdebug dll should be where?)

I am running Apache/MySql locally (on my workstation), and want to debug externally (ie not have VS.PHP start up another instance of Apache), running PHP Version 5.2.1

juanc says:

Setting up Xdebug on your web server depends on the OS platform and Php version.

I recommend you go to www.xdebug.org and download the correct module for your needs. In this site you will find the config needed in the php.ini. You can also look at VS.Php php.ini files as a reference.