在公司都用的遠程開發機開發,每次有錯誤調試就得dd(xxx)然后保存真是
,讓我在本地開發用慣xdebug的情何以堪,所以有了下文。
1.安裝配置xdebug
直接使用pecl安裝即可
?
# pecl install xdebug
?
然后寫xdebug配置,下面是我的設置(具體擴展路徑以你安裝完后提示的路徑為準)
?
[xdebug]
zend_extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20160303/xdebug.so
xdebug.remote_enable = 1
xdebug.remote_host=192.168.220.128(你運行xdebug服務器的外網ip,這里是我在虛擬機測試的地址)
xdebug.remote_connect_back = 1
xdebug.remote_port = 9000
保存重啟php
?
2.配置運行DBGp proxy
首先下載,下載地址,我在這選擇的是Komodo IDE 10 (version 10.1.2)然后是Python Remote Debugging Client ?Linux (x86_64) ,可以按照你的系統需求選擇下載,但推薦選擇python版本而不是其他的,因為這篇文章是按python版寫的╭(′▽`)╯
下載完解包進入目錄,別著急運行,先測試一下包是否已經導入
python -c "import dbgp.client; print 'ok'"
如果沒顯示ok而是顯示錯誤就代表沒導入編輯/etc/profile(具體目錄按照你解壓目錄為準,我這是root下的PythonRemoteDebugging目錄,因為我的centos 7 的默認python 版本是2.7所以我導入的包目錄是pythonlib,如果你是3的改成python3lib)
export PYTHONPATH=/root/PythonRemoteDebugging/pythonlib
繼續上一步測試是否顯示ok好了現在可以運行了
./pydbgpproxy -d 127.0.0.1:9000 -i 192.168.220.128:9001
如果顯示類似的信息代表運行成功,如果錯誤一般提醒端口已被占用換個端口即可INFO: dbgp.proxy: starting proxy listeners. appid: 3583
INFO: dbgp.proxy: dbgp listener on 127.0.0.1:9000
INFO: dbgp.proxy: IDE listener on 192.168.220.128:9001
好了最后一步,開放9001端口編輯/etc/sysconfig/iptables 加一條規則
-A INPUT -p tcp -m state --state NEW -m tcp --dport 9001 -j ACCEPT
重啟iptables 讓規則生效然后運行pydbgpproxy?
3.設置PhpStorm
打開 Tools->DBGp?proxy->configuration
IDE key 是用來區分不同用戶的 只要每個人的不重復就可以了
Host 這個就是pydbgpproxy中指定的外網ip,我這是192.168.220.128
Port?pydbgpproxy中指定的端口,我這是9001
保存后,我們還得注冊一下
點擊Tools->DBGp proxy->register IDE?
顯示以下內容,表示注冊成功
IDE successfully registered with ide key 'PHPSTORM'
參考網站:
https://xdebug.org/docs/install
http://docs.komodoide.com/Manual/debugpython
https://confluence.jetbrains.com/display/PhpStorm/Multi-user+debugging+in+PhpStorm+with+Xdebug+and+DBGp+proxy
?