1. 程式人生 > >Xdebug的遠端除錯搞明白了

Xdebug的遠端除錯搞明白了

琢磨了1天終於給搞明白了

懶得自己編譯的話下面有編譯好的包


首先這個 php.ini的配置中 不需要 加上extension=xdebug.so
用zend_extension="/path/xdebug.so" path是完整的路徑
然後開啟遠端除錯
xdebug.remote_enable=1

自動開始也開啟
xdebug.remote_autostart=1

把所有變數都dump出來 (頁面會很亂的噢)
xdebug.show_local_vars=1

這個填除錯的這個客戶端的地址,比如server是10.0.0.1 除錯的IDE(我用的是NetBeans 6.5 for osx)的機子的IP是10.0.0.34 如果是本機除錯的話填localhost 或者不設定這個選項就好了
xdebug.remote_host=10.0.0.1

其它的用預設的就可以了

如果還想用特定的編輯器打開發生錯誤的檔案連線的話可以設定
xdebug.file_link_format = "txmt://open?url=file://%f&line=%l"

我用的連線是txmt 這個是用TextMate開啟的協議吧,其它的沒試過

重啟apache就可以看見 Xdebug載入的樣子了

[img]/upload/attachment/43244/0c8f08a2-0b25-3239-9de0-1a369eaf80e6.png[/img]

接著開啟NetBeans
使用工具欄的Debug(快捷鍵 ⌂⌘F5),就可以除錯檔案了.預設是 支援Xdebug的基本不用修改,除非9000的埠被佔用了,更改的話,php.ini裡頭的 xdebug.remote_port也改成相應的埠號
除錯神圖一張

[img]/upload/attachment/43251/b05997d7-5fb7-3c5d-a936-3c716dab4c0a.png[/img]