今天想裝個xdebug試一下,由於以前都是用echo print exit之類的測試;php
進官網https://xdebug.org/download.php下載sourcenginx
也能夠直接 wget https://xdebug.org/files/xdebug-2.5.5.tgz服務器
接着解壓 tar zxvf xdebug-2.1.0.tgz 測試
運行 phpizespa
編譯 ./configure --enable-xdebug debug
make server
編譯安裝完成後會有一個 modules文件夾rem
注意:問題來了,按照網上的說法get
cp modules/xdebug.so /你的php目錄/xdebug it
而後在php.ini裏(php.ini文件的位置經過phpinfo()能夠看到)
在配置最後加上
[Xdebug]
zend_extension =" 剛剛複製xdebug.so的目錄/xdebug.so"
xdebug.profiler_enable=on
xdebug.trace_output_dir="/alidata/server/php/xdebug/"
xdebug.profiler_output_dir="/alidata/server/php/xdebug/"
xdebug.remote_enable=on
xdebug.remote_handler=dbgp
;xdebug.remote_host=localhost
;xdebug.remote_port=9999
到了這塊,按照網上別人的說法,修改後,重啓nginx,一直沒有效果,反覆對照路徑是否錯了,配置是否錯了,發現都沒問題,折騰了好久,都沒有效果。
無奈之際在 phpinfo()裏看到 extension_dir(個人是/xxx/server/php/lib/php/extensions/no-debug-non-zts-20121212/) ,纔想到,可能和網上那幾個帖子說的 複製 xdebug.so到文件夾那塊有問題吧,難道根本就不能手動複製到隨意的目錄再指定?到extension_dir指定的目錄下一看,已經有xdebug.so了,
也許剛剛編譯的時候自動複製進這個指定的文件夾來了,都不用手動cp了,直接在配置裏 zend_extension = 'xdebug.so' ,重啓,果真有效果了
多是由於服務器的軟件版本和安裝參數不同,致使這個地方和別人的不同,因此參照網上的帖子時,要學會靈活的變更。
ps:而後關於php.ini修改後是否配置有誤,能夠用下面這個試一下
php -i | grep "php.ini"