448
Php編程
PHP遠程多會話調試
一、背景介紹
適用什麼場景:跨項目調試,遠程調試,比簡單的var_dump更方便易用。
二、遠程調試配置
Nginx+PHP-fpm環境,配置php.ini拓展
[Xdebug]
zend_extension = /usr/local/php56/lib/php/extensions/no-debug-non-zts-20131226/xdebug.so
xdebug.remote_enable=1
remote_handler=dbgp
xdebug.remote_host=localhost
xdebug.remote_port=9000
xdebug.idekey=XDEBUG
注意CLI環境的php與fpm的php是否使用的不同php.ini配置文件,需要配置fpm對應的php.ini
檢查是否配置正確
將遠程(fpm所在主機10.99.1.185)端口9000映射到本地端口9000:
本地安裝openssh後可以直接使用ssh命令
在服務器可以看到9000端口被ssh占用
PHPSTORM也需要配置Xdebug,配置同時啟用的調試會話為多個,端口9000,接受外部請求。
配置項目相關的path mapping,域名,端口
三、跨會話(項目)調試配置
www項目代碼如下:
frontend.php
api項目代碼如下:
backend.php
curl_setopt($this->ch, CURLOPT_COOKIE,"XDEBUG_SESSION=XDEBUG");四、調試流程
確保調試參數已經轉發給api接口
增加同時可以調試的會話數量
開啟調試監聽,開啟服務端Xdebug
五、參考資料
https://confluence.jetbrains.com/display/PhpStorm/Simultaneous+debugging+sessions+with+PhpStorm
https://paper.seebug.org/308/
點擊播放
GIF/281K
技術交流Q群:
聊聊技術+妹紙。
最後更新:2017-10-17 21:22:31