簡體   English   中英

使用xdebug,netbeans和已安裝的遠程服務器進行調試

[英]Debugging with xdebug, netbeans and a mounted remote server

我使用Netbeans在Windows計算機上進行開發,我正在編輯的文件在遠程LAMP服務器上。 文檔根目錄作為驅動器號(Y :)安裝在Windows計算機上。 因此,我正在本地開發netbeans的東西,而實際上我正在本地裝載上進行遠程開發。

當我想使用xdebug和netbeans調試CLI PHP腳本時,我的問題就開始了。 調試基於瀏覽器的內容相當簡單,但是調試CLI的內容比較麻煩,我不確定是否知道如何使它正常工作。

第一個問題是,Netbeans想知道php5解釋器在哪里,但是由於它在遠程服務器上,所以我無法告訴它。

有沒有人有這樣做的經驗?

謝謝,

麥克風

當我向項目中添加路徑映射時(在“項目”選項卡|右鍵單擊“項目” |屬性|運行配置|“高級”按鈕下),NetBeans PHP的關鍵調試突破就出現了,這樣我的項目就知道如何將服務器源代碼路徑與本地路徑(Windows驅動器盤符路徑)。

路徑圖示例:

/ home / myusername / sourcedir映射到x:\\ sourcedir

我相信我使用的配置與您的配置相似(LAMP服務器,Windows機器以及來自LAMP機器的源在Windows映射的驅動器下本地顯示)。 這對我有用。

我一直在嘗試將項目的URL( http:// server / projectroot )用作路徑映射。 那不是必需的。 需要服務器上的實際路徑(即我的主目錄及以下目錄)。

Pada的意思是:xdebug.remote_connect_back,而不是xdebug.remote_enable。 您必須同時設置兩者,Xdebug才能自動連接回Netbeans(或其他調試器)。

xdebug.remote_host變量引用xdebug應該連接的主機。 您可以使用NetBeans在遠程服務器上調試PHP,但是它要求您在遠程服務器上配置xdebug,以便它可以連接到開發PC。

這是一個簡單的示例:您的帶有NetBeans的開發PC在10.0.0.100上,而遠程PHP Web服務器在10.0.0.1上。設置xdebug.remote_host = 10.0.0.100現在,只要有人(或您)在遠程服務器上的URL,xdebug會嘗試連接到10.0.0.100。

Xdebug v2.1具有一個不錯的功能:xdebug.remote_enable = 1啟用該選項將覆蓋xdebug.remote_host,然后xdebug將連接到$ _SERVER ['REMOTE_ADDR'](這是客戶端從其連接的IP地址)。 由於您無法使用ini_set()操縱xdebug.remote_host,此強大功能將允許您在同一服務器上進行多次調試。

xdebug.remote_autostart=1到自動遠程連接。 “ Xdebug v2.1具有一個不錯的功能:”。

我不了解Netbeans,從未使用過它,但是在Eclipse PDT中,您也可以使用XDebug進行調試,“ PHP網頁”和“ PHP腳本”之間是有區別的。 對於“ PHP網頁”,請選擇一個Web服務器(之前配置的),而不是一個php解釋器(例如,您必須使用“ PHP腳本”)。

也許Netbeans有同樣的事情?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM