2015-09-07 61 views
3

我已經按照多個教程設置了PhpStorm的XDebug,但它看起來像
我一點都不幸運。不管我怎麼努力,它總是堅持
等待與IDE鍵「PHPSTORM」
傳入連接,但是,當我重新加載頁面CTRL + R,我可以看到一個一瞬間連接
然而,然後將它切換回「等待。」
我已經試過了XDebug Chrome的插件和PHPStorm XDebug的發電機書籤
藏漢爲使「開始收聽PHP調試連接」在PHPStorm。
我使用Nginx的php5-fpm,並試過tcpdump 9089
如前所述,一秒鐘就會轉儲它。但後來它又失去了......PhpStorm和遠程XDebug不能正常工作

有人可以幫我嗎?

我的php.ini配置:

[xdebug] 
zend_extension="/usr/lib/php5/20121212/xdebug.so" 
xdebug.remote_enable=1 
xdebug.remote_port=9089 
xdebug.remote_connect_back=1 
xdebug.profiler_enable=1 
xdebug.profilter_output_dir="/tmp/xdebug.log" 
xdebug.idekey=PHPSTORM 

我PHPStorm設置:

PHP Interpreter Settings

[PHP Server Settings[2]

PHP Debug Settings

Debug Configuration

編輯:我不知道爲什麼,但刪除xdebug.remote_connect_back=1
xdebug.remote_host=my.ip.add.ess替換它做它的工作?
正如我閱讀文檔,我有理解是,第一個設置是隱式請求
而後來的一個是一個明確IP申請..

+1

如果我嘗試調試一個PHP __script__而不是一個完整的項目(類,函數等),我的xdebug行爲類似,可能不知道你在哪裏放置斷點。其次,你是否嘗試過使用'xdebug.remote_host = ...'而不是'remote_connect_back'? – Ankh

+0

當我使用laravel項目時,我設置了一個從數據庫中獲取數據的斷點。不,我沒有嘗試remote_host,因爲我讀過'xdebug。remote_connect_back = 1'是'相同',僅適用於所有傳入連接而不是特定IP – Krenor

+0

請收集並提供xdebug日誌以進行此類不成功的調試會話:http://xdebug.org/docs/all_settings#remote_log – LazyOne

回答

0

提供了以下設置一試,聽起來很可笑,但只是複製過去的整個塊,而不是鍵入方式(相信你我,幫助一對夫婦的我的同事)

xdebug.remote_host=10.0.2.2 
xdebug.remote_enable=1 
xdebug.remote_port=9000 
xdebug.remote_autostart=1 
xdebug.show_exception_trace=0 
xdebug.show_local_vars=0 
xdebug.var_display_max_data=10000 
xdebug.var_display_max_depth=20 
xdebug.max_nesting_level=200 

PS

我以爲自己已經滅絕的文件是存在於你的客戶機(虛擬機),因爲你說在斷點處將聲音的分裂停止

此外,我認爲您的瀏覽器發送正確的「PHPSTORM」