我对XDebug有一个奇怪的问题。
首先是项目设置(它已完全弃用,但它是一个客户项目,我不能改变一件事):
我配置了XDebug和Netbeans,一切正常。
zend_extension="/home/user/xdebug-2.0.2/modules/xdebug.so"
xdebug.remote_enable = 1
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_host=10.0.1.26
xdebug.remote_port=9000
xdebug.remote_log="/etc/apache2/logs/xdebug_error.log"
令我头疼的是,如果我在Netbeans中按继续(F8),似乎没有任何反应。 XDebug获取run命令,但页面挂起(请参阅XDebug Error.log)。似乎XDebug仍然阻止PHP。如果我在Netbeans中杀死XDebug会话,则会处理该页面。然而,在我杀死会话之后,在重新启动httpd之前我无法启动新的。
Log opened at 2012-09-24 12:54:39
-> <init xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" fileuri="anonymised" language="PHP" protocol_version="1.0" appid="5813" idekey="netbeans-xdebug"><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_set -i 661 -n show_hidden -v 1
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="feature_set" transaction_id="661" feature="show_hidden" success="1"></response>
<- feature_set -i 662 -n max_depth -v 3
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="feature_set" transaction_id="662" feature="max_depth" success="1"></response>
<- feature_set -i 663 -n max_children -v 31
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="feature_set" transaction_id="663" feature="max_children" success="1"></response>
<- feature_get -i 664 -n max_data
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="feature_get" transaction_id="664" feature_name="max_data" supported="1"><![CDATA[1024]]></response>
<- breakpoint_set -i 665 -t line -s enabled -f anonymised -n 21
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="breakpoint_set" transaction_id="665" state="enabled" id="58130001"></response>
<- run -i 666
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="run" transaction_id="666" status="break" reason="ok"><xdebug:message filename="anonymised" lineno="21"></xdebug:message></response>
<- stack_get -i 667
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="stack_get" transaction_id="667"><stack where="{main}" level="0" type="file" filename="anonymised" lineno="21"></stack></response>
<- context_names -i 668
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="context_names" transaction_id="668"><context name="Locals" id="0"></context><context name="Superglobals" id="1"></context></response>
<- context_get -i 669 -c 0
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="context_get" transaction_id="669" context="0"><property name="a" fullname="$a" type="uninitialized"></property><property name="b" fullname="$b" type="uninitialized"></property><property name="value" fullname="$value" address="47887874207944" type="int"><![CDATA[0]]></property></response>
<- run -i 671
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="run" transaction_id="671" status="stopped" reason="ok"></response>
在我按下Continue几次后,Netbeans抛出一个Socket Exception(断开的管道)。
希望有人可以帮助我:(