码迷,mamicode.com
首页 > 数据库 > 详细

PhpStorm, XDebug, and DBGp Proxy

时间:2015-12-22 13:03:53      阅读:990      评论:0      收藏:0      [点我收藏+]

标签:

phpstorm 利用 xdebug、dbgp-proxy配置远程调试

1.单客户机远程调试

  技术分享

  a.安装xdebug库文件(windows:php_xdebug.dll;linux:php_xdebug.so)

  b.修改php.ini(php源码运行环境)

        ;xdebug库文件
        zend_extension = "d:/wamp/bin/php/php5.3.10/zend_ext/php_xdebug.dll"
        ;开启远程调试
        xdebug.remote_enable = On
        ;客户机ip
        xdebug.remote_host=localhost
        ;客户机监听端口
        xdebug.remote_port=9000
        xdebug.remote_handler=dbgp
        ;idekey
        xdebug.idekey=PhpStorm
        xdebug.profiler_enable = off
        xdebug.profiler_enable_trigger = off
        xdebug.profiler_output_name = cachegrind.out.%t.%p
        xdebug.profiler_output_dir = "d:/wamp/tmp"

 

  c.客户机(IDE运行环境)

    I.配置php程序远程服务,phpstorm:File>Settings>Languages & Frameworks>PHP>Servers

      apache服务:其中"use path mappings"用于将本地代码与远程服务主机代码映射,然后跟踪

    II.配置xdebug,phpstorm:File>Settings>Languages & Frameworks>PHP>Debug

      Debug port:默认9000,与"xdebug.remote_port"一致

    III.单击“edit configurations”,选择服务器

    IIII.在phpStorm里打开监听,就是一个电话一样的按钮

    V.打开debug,就是那个像甲壳虫的小按钮(此操作会打开一个链接然后将连接后的参数XDEBUG_SESSION_START注入到cookie:XDEBUG_SESSION,该值唯一

      标示一个ide)

2.多客户机远程调试

  技术分享

  a.在远程服务主机上,安装Komodo Remote Debugging(http://code.activestate.com/komodo/remotedebugging/)

    启动pydbgpproxy.exe -i 0.0.0.0:9001 -d 9000

    控制台输出:

        INFO: dbgp.proxy: starting proxy listeners. appid: 10814
        INFO: dbgp.proxy: dbgp listener on 127.0.0.1:9000
        INFO: dbgp.proxy: IDE listener on 0.0.0.0:9001

        则成功启动

    dbgp proxy server监听9000与远程主机服务通信,IDE(phpstorm)监听9001与dbgp proxy server通信

  

  b.安装xdebug库文件(windows:php_xdebug.dll;linux:php_xdebug.so)

  c.修改php.ini(php源码运行环境)

        ;xdebug库文件
        zend_extension = "d:/wamp/bin/php/php5.3.10/zend_ext/php_xdebug.dll"
        ;开启远程调试
        xdebug.remote_enable = On
        ;DBGP PROXY SERVER所在主机ip
        xdebug.remote_host=localhost
        ;DBGP PROXY SERVER监听端口
        xdebug.remote_port=9000
        ;代理
        xdebug.remote_handler=dbgp
        ;此种模式下该项不在起作用,可以取消
        ;xdebug.idekey=PhpStorm
        xdebug.profiler_enable = off
        xdebug.profiler_enable_trigger = off
        xdebug.profiler_output_name = cachegrind.out.%t.%p
        xdebug.profiler_output_dir = "d:/wamp/tmp"

 

  c.客户机(IDE运行环境)

    I.配置php程序远程服务,phpstorm:File>Settings>Languages & Frameworks>PHP>Servers

      apache服务:其中"use path mappings"用于将本地代码与远程服务主机代码映射,然后跟踪

    II.配置xdebug,phpstorm:File>Settings>Languages & Frameworks>PHP>Debug

      Debug port:监听900x(其中x根据自己选择),listen for external debug connections(与DBGP Proxy通信)

      DBGP Proxy:

        IDE Key(IDE的key,最好不要与其他客户机相同)

        Host(DBGP Proxy server 的主机ip)

        Port(DBGP Proxy server的监听端口,与-i 0.0.0.0:9001里设置一致)

    III.将IDE的配置注入到DBGP Proxy server

      单击工具栏"Tools",选择"Register IDE"进行注册(若果没有配置IDE,可以选择"configurations"进行配置,然后注册)

    IIII.单击"edit configurations",选择服务器

    V.在phpStorm里打开监听,就是一个电话一样的按钮

    VI.打开debug,就是那个像甲壳虫的小按钮(此操作会打开一个链接然后将连接后的参数XDEBUG_SESSION_START注入到cookie:XDEBUG_SESSION,该值唯一

      标示一个ide),将XDEBUG_SESSION_START参数值修改为IDE Key

参见:http://matthardy.net/blog/configuring-phpstorm-xdebug-dbgp-proxy-settings-remote-debugging-multiple-users/

    http://wenku.baidu.com/link?url=ppL0e290lQSjle8jkI3Apaqvi5yYkv_kuSxl6SYnvwZFWPVMemRl8NrLO_QKmm6Kunn1JBmMmBLs5I4IL5yW5ixI2KQ0mFmcr1hL9uyIgq3

Komodo Remote Debugging

PhpStorm, XDebug, and DBGp Proxy

标签:

原文地址:http://www.cnblogs.com/jice/p/5064838.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!