環境說明
宿主機deepin系統,用的是docker-compose 搭建laravel
php.ini 新增 xdebug 模組
- 下載xdebug模組
- 首先列印phpinfo() 全選複製到 https://xdebug.org/wizard 這個連結的文字域中 並且點選這個按鈕生成
點選下載
注:由於我之前下載2.7.1版本的,並且適用php 7.1,固這裡不下載2.9
解壓並進入xdebug目錄
tar -xvzf xdebug-2.9.0.tgz cd xdebug-2.9.0
編譯並生成.so檔案
phpize # 生成configure檔案 ./configure --enable-xdebug # 配置 make && make install # 編譯並生成
複製 xdebug.so模組到指定目錄
cd modules/ mkdir /usr/local/bin/modules cp xdebug.so /usr/local/bin/modules
找到 php.ini 檔案 在最後插入
[xdebug] zend_extension=/usr/local/bin/modules/xdebug.so xdebug.profiler_enable=on #開啟效能監控(一般在正式環境不建議開啟) xdebug.trace_output_dir="/usr/local/php/xdebug_trace" #程式執行順序日誌 xdebug.profiler_output_dir="/usr/local/php/xdebug_profiler" #程式執行效能日誌 xdebug.default_enable=0 xdebug.remote_enable=1 xdebug.remote_handler=dbgp xdebug.remote_host=192.168.5.24 xdebug.remote_port=9000 xdebug.remote_connect_back=0 xdebug.remote_autostart=1 xdebug.idekey=PHPSTORM xdebug.remote_log=/usr/local/php/xdebug/remote.log
zend_extension 這個值就是xdebug.so的目錄,xdebug.remote_host是電腦ip,xdebug.idekey 這個值要跟phpstrom編輯器設定的一致
重啟 php 列印 phpinfo(),如果有下圖,表示成功
因為我用的是docker 剛開始沒有 php.ini 檔案find / -name php.ini*
進入/usr/local/etc/php,並且根據 php.ini-development 複製一份 php.ini
cd /usr/local/etc/php
mv php.ini-development php.ini
接下來配置phpstorm
|file|settings
這裡的 debug port 要跟上面 php.ini 裡面 xdebug.remote_port 的值一致
配置DBGp Proxy,這裡IDE key 要跟下面瀏覽器debug配置的key一致
配置servers,這裡的host,本地專案一般填localhost,埠要跟伺服器配置的一致,我的是宿主機81埠對映到docker容器 80埠,所以填81,Debugger 這裡選擇 Xdebug ,下面的File/Directory配置的是宿主機php專案所在目錄,而absolute path on the server配置的是Docker容器中的專案目錄
配置 |Run|Debug Configurations
新增一個PHP Web Page
谷歌瀏覽器安裝xdebug helper
外掛
安裝完成後,右鍵選擇"選項",IDE key選擇"PhpStorm",後面輸入"PHPSTORM"點選save按鈕即可:
點選右上角這個電話蟲,設定斷點,瀏覽器重新整理,就可以進行斷點除錯
本作品採用《CC 協議》,轉載必須註明作者和本文連結