寫這篇文章的時候,因為自己也像很多新手一樣犯了很多基礎的錯誤,由於發現網上一些資料大多數是針對本地的,對各個配置的原因講解並不清楚,所以我花費了蠻長時間弄懂了整個調試的過程
一:操作環境:
ubuntu 14.04 php5.5 +apache windows phpstorm
二:准備工作,在保證php與apache能夠正常工作的情況下
1:sudo apt-cache search xdebug
先查找xdebug相關的軟件名,然后安裝php的
sudo apt-get install -y php5-xdebug
2:安裝完成之后
如果是用apt安裝的php,我們就可以到/etc/php5/apache2下面找到php.ini
注意cli目錄下面也有一個php.ini,這是因為php的配置被合理的分成兩類,cli目錄下面的主要做拓展配置使用
編輯之后,添加[Xdebug]板塊
這張圖是我所做的配置,其實配置上不會有很大問題,大家注意一下,xdebug.remote_host 的ip要填你的phpstorm,也就是你的windows所在的ip,
xdebug.remote_port默認是9000,但是一般情況下,windows的9000端口會被占用,建議在關閉windows防火牆的時候,隨意寫一個端口,或者是開啟防火牆,在新建策略里面開啟一個端口供遠程調試使用
下面給大家一個官網對各個配置的說明:https://xdebug.org/docs/all_settings
官網已經說的非常詳細了,在此不再贅述,注意一個點xdebug.idekey,如果配置了這個idekey,就要記住它
三:配置phpstorm
1:首先把項目文件復制一份到你的虛擬機,或者是服務器里面,可以放在apache的網站根目錄下面,然后做項目代碼的同步(就是你在本地修改的代碼,會自動同步到服務器中,服務器中的php來編譯你的代碼)
2:配置鏈接遠程服務器
3:做本地的項目和遠程的項目映射
大家可以做一下參考,網上這類自動遠程部署的教程 很多,大家可以照着做,下面來介紹一下xdebug的配置和使用
在文件->設置->語言與框架中 找到debug
找到xdebug 欄目,並配置debug port的端口為你之前設置的端口
在DBGp Proxy中配置你的idekey idekey就是你在配置文件中寫的那個,host是你的服務器ip,port可以自選,一般默認選80就好了
很重要的一步:配置server部分
自己手動添加一個,Host填服務器ip,然后port是默認80端口,如果你修改過,你可以更改成你設置的web端口,debug選xdebug
服務器的絕對路徑,主要自己要手動輸入進去,在配置完成之后,重啟apache,然后就可以使用xdebug了,具體的使用方法如下:
在運行-》編輯結構
自己手動添加一個xdebug實例,server選擇剛才配置的server名稱
starturl,這個我配置了虛擬域名,一樣可以通過ip什么的
保存成功之后,現在項目文件中插入斷點,然后點擊
這樣的按鈕,f7進行逐語句調試,f9進行逐過程調試