Tôi đã cài đặt Xdebug 2.1 và chạy với PHP 5.2.13. Nó có thể kết nối thành công với nhiều máy khách DBGP (tức là xdebug.remote_log
hiển thị liên lạc qua lại và bản thân các khách hàng cũng hiển thị kết nối đến), nhưng nó không dừng lại ở các điểm ngắt. Tôi đã thử NetBeans, MacGDBp và cũng là dòng lệnh debugclient
đi kèm với Xdebug.Xdebug kết nối thành công với máy khách DBGP, nhưng sẽ không dừng lại ở điểm ngắt
Một trao đổi điển hình trông giống như:
Log opened at 2010-07-20 09:33:17
-> <init xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" fileuri="file:///mnt/hgfs/htdocs/mycompany/index.php" language="PHP" protocol_version="1.0" appid="14371" idekey="macgdbp"><engine version="2.1.0"><![CDATA[Xdebug]]></engine><author><![CDATA[Derick Rethans]]></author><url><![CDATA[http://xdebug.org]]></url><copyright><![CDATA[Copyright (c) 2002-2010 by Derick Rethans]]></copyright></init>
<- status -i macgdbp
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="status" transaction_id="macgdbp" status="starting" reason="ok"></response>
<- step_into -i macgdbp
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="step_into" transaction_id="macgdbp" status="stopping" reason="ok"></response>
<- status -i macgdbp
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="status" transaction_id="macgdbp" status="stopping" reason="ok"></response>
Log closed at 2010-07-20 09:33:18
NetBeans cố gắng để đặt breakpoint, và chúng được công nhận bởi Xdebug:
<- breakpoint_set -i 7 -t line -s enabled -f file:///mnt/hgfs/htdocs/mycompany/index.php -n 9
-> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="http://xdebug.org/dbgp/xdebug" command="breakpoint_set" transaction_id="7" state="enabled" id="139360004"></response>
Tuy nhiên, Xdebug vẫn từ chối dừng lại!
Ồ, điều này thực sự đã cứu tôi sau khi nhận được một số hành vi lạ cấu hình gỡ lỗi từ xa với MacGDBP. Tôi có thể thấy rằng các kết nối đã thành công trong xdebug.remote_log, và máy khách đã nhận được các kết nối, nhưng các kết nối nhanh chóng bị loại bỏ. Không có đầu ra nào trong máy khách. Đã thay đổi "extension = xdebug.so" khi bạn đề xuất và phát triển mọi thứ hoạt động tốt đẹp. – milesw
Bạn đã làm ngày của tôi. Nếu tôi có thể, tôi sẽ upvote một ngàn lần. – Bgi