從事php開發已經近兩年了,以前調試一直是經過古老的echo和die配合,自從接觸php以來一直不習慣這種動態語言的的調試方式,一直想用一用xdebug像靜態語言那樣調試。曾經也嘗試搭建屢次,但遇到了各類各樣的坑。最近想追蹤一下laravel的源碼,被其中各類依賴注入的方式搞的頭疼,天然而然但願可以經過xdebug來幫我解決這個問題,因而又一次開始了與bug死磨硬泡的搭建之路,前先後後花了一天的時間終於成功了,記錄一下過程。php
Homebrew是mac上的軟件包管理工具,相似於centos上的yum,很是好用。首先咱們要安裝它。html
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
mac系統默認是預裝了apache和php的,安裝地址大概在private/etc/
目錄下,可是爲了以後維護方便咱們須要本身安裝php。nginx
brew install php72
brew安裝後的軟件能夠經過brew list
命令查看,目錄在/usr/local/etc/
。laravel
查看php版本git
php -v
若是爲系統php版本,這個咱們須要改變環境變量裏的php路徑github
修改 vim ~/.bash_profile
apache
export PATH="$(brew --prefix php)/bin:$PATH" export PATH="$(brew --prefix php)/sbin:$PATH"
將php設置爲開機自啓vim
$ mkdir -p ~/Library/LaunchAgents $ cp /usr/local/opt/php/homebrew.mxcl.php.plist ~/Library/LaunchAgents/ $ launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.php.plist
查看php-fpm是否成功啓動centos
ps aux|grep php-fpm
brew install nginx
安裝以後的ngnix路徑在/usr/local/etc/nginx
,nginx 的文件配置跟通常的lnmp配置是同樣的,這裏就很少贅敘。ruby
萬惡的xdebug,這裏是我踩坑最多的地方了,首先安裝網上的教程brew install php72-xdebug
然而
Error: No available formula with the name "php72-xdebug"
萬惡的error,關於這個問題官方的解釋因而我決定採用stackoverflow上一位大神的方法,原文
tar -xvzf xdebug-2.7.0alpha1.tgz
cd xdebug-2.7.0alpha1
phpize
./configure
make
cp modules/xdebug.so /usr/local/opt/php/lib/php/20170718/xdebug.so
[xdebug] # 必須使用絕對路徑 zend_extension="/usr/local/opt/php/lib/php/20170718/xdebug.so" xdebug.remote_enable=1 #xdebug.remote_host=local004.khs1994.com xdebug.remote_connect_back=1 xdebug.remote_port=9010 xdebug.remote_log=/tmp/xdebug-remote.log xdebug.remote_handler=dbgp xdebug.idekey = PHPSTORM xdebug.remote_autostart = 1