了解Xdebug和Komodo的配置用來在服務器上調試PHP程序。
在編寫應用程序時,出色的開發人員使用優秀的工具進行開發和設計。對使用PHP編寫基於Web的應用來說同樣適用。對PHP應用編程來說兩個有用的工具分別是Komodo和Xdebug。
Komodo是一個跨平台的集成開發工具,可以使用DBGp協議進行遠程PHP應用程序調試。Xdebug是提供了調試支持功能的PHP擴展。使用這兩個工具,你可以在你的服務器上遠程調試任何PHP應用程序。
第一步,在運行要調試的腳本的服務器上安裝Xdebug,使用PECL可以很容易地完成該任務。你還需要安裝Apache,PHP和PEAR開發文件。大多數Linux發行版本都提供了這些安裝包,例如apache-devel,php-devel可能還有php-pear。安裝完這些軟件包或你的發行版本的相同包,執行下列命令:
# pecl install xdebug-beta
一些發行版本提供了打包的Xdebug二進制文件,所以先找一下。如果沒有的話,你需要利用Apache/PHP開發文件從源文件來構建它。然後,編輯/etc/php.ini文件或其它對等文件,添加如下內容:
zend_extension=/usr/lib/php/extensions/xdebug.so
[debug]
; Remote settings
xdebug.remote_autostart=off
xdebug.remote_enable=1
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_host=localhost
xdebug.remote_port=9000
;xdebug.idekey=
除非你打算在同一個主機上運行IDE,否則將Xdebug.remote_host關鍵字從localhost改為你想要在其上運行IDE的主機名。
使用Komodo,要確保對調試支持進行正確的配置。進入引用->調試->連接,設置端口號為上面xdebug.remote_port定義的端口(本例為9000)。確保選中調試->“監聽遠程調試”。
配置完後,如果還沒有重啟Apache,那麼重啟服務器上的Apache,然後浏覽你的站點上
的某個頁面。加載該頁面並在URl中附加XDEBUG_SESsION_START獲得相應變量值。例如:
http://devel.mysite.com/blog/submit.php?XDEBUG_SESSION_START=1
如果所有配置都正確完成,那麼Komodo將提示你有一個遠程應用請求開啟調試會話。選擇是,然後將會得到一個包含頁面內容的新文檔,調試會話開始。
如果剛開始時不能正常工作,查看一下確保遠程服務器是否正確訪問了機器上的調試端口。如果在IDE和服務器中間有一個防火牆,你需要確保防火牆能夠在IDE運行的計算機的端口上前導連接。