php+xdebug+dbgp远程调试(多人)

目录

  1. 创建 DBGP 服务
  2. 配置
    如果已经有人配置好,其他人如果也想要调试的话,只需按照这里的 2 和 3 配置。
  3. 调试

创建 DBGP 服务

  1. 下载页面,下载 python 版本的 dbgp 到服务器上。

  2. 解压后执行 pydbgpproxy。

    如果提示找不到 dbgp 模块,则编辑该文件。在 96 行左右有这么一块代码:

        candidate_paths = [
            dirname(this_dir), # Komodo source tree layout
            join(dirname(this_dir), pythonlib),
        ]
    

    join(dirname(this_dir), pythonlib) 改为 join(this_dir, pythonlib) 再执行。

    如果执行成功,会有类似于以下的输出:

    [root@localhost dbgp]# ./pydbgpproxy -i 0.0.0.0:9001 -d 9000
    INFO: dbgp.proxy: starting proxy listeners.  appid: 11203
    INFO: dbgp.proxy:     dbgp listener on 127.0.0.1:9000
    INFO: dbgp.proxy:     IDE listener on  0.0.0.0:9001
    

配置

  1. 服务器上编辑 php.ini
    修改以下两个配置:

    xdebug.remote_host=127.0.0.1
    xdebug.remote_port=9000
    

    如果没有装 Xdebug 插件,请先安装。

  2. PHPstorm 上设置
    IDE key 设置为任意字符串(不能与其他人重复),填写自己名字拼音就行了。
    Host 填服务器的 ip
    Port 填 9001

    开始监听 debug(下一步之前必须保证已经开启监听,否则无效):

    如果 dgbp 服务已打开,就可以注册了
    Tools | DBGp Proxy | Register IDE

  3. chrome 浏览器上配置
    进入 chrome 商店,搜索 Xdebug helper。安装完毕后,右键 Xdebug helper,选择 选项 进入配置。IDE key 选 Other,在右边填入刚才在 PHPstorm 上设置的 IDE key。点 Save 保存。

调试

开始打断点调试吧~刷新页面或者点击按钮触发请求,一旦有执行到打断点的那一行,就会停下来。

参考:
Multi-user debugging in PhpStorm with Xdebug and DBGp proxy

原文地址:https://www.cnblogs.com/schaepher/p/8939616.html