首页 » phpcode » PHPStorm Xdebug 调试任意客户端的连接请求

PHPStorm Xdebug 调试任意客户端的连接请求

 

php xdebug简单配置说明

配置参数选项 参数值类型与默认值 参数选项描述
xdebug.remote_enable boolean类型,默认值=0 是否启用Xdebug的远程调试功能(默认:未启用)
xdebug.remote_host string类型,默认值=localhost 指定远程调试的主机地址(可以为域名、主机名或IP地址)
xdebug.remote_port integer类型,默认值=9000 指定远程调试的端口号
xdebug.remote_handler string类型,默认值=dbgp 指定远程调试的处理协议,值可以为"php3"、"gdb"、"dbgp"。其中,dbgp是唯一受支持的协议。php3可以选择旧版本PHP 3样式的调试器输出;gdb可以像dbgp一样地使用GDB调试器。Xdebug 2.1及以后版本只支持dbgp协议。
xdebug.remote_autostart boolean类型,默认值=0 通常情况下,你需要使用一个指定的HTTP GET/POST 变量来启动远程调试。如果该参数设为1,即使没有指定的变量,Xdebug也将一直尝试开始一个远程调试会话,并与客户端保持连接。
xdebug.remote_connect_back boolean类型,默认值=0 该参数自2.2版本开始引入。如果启用该参数选项,xdebug.remote_host参数将会被忽略。Xdebug将会尝试和发送请求到PHP服务器的所有客户端建立连接。Xdebug将通过$_SERVER['REMOTE_ADDR']来获取客户端所使用的IP地址。只要对方能够连接到服务器,就可以开启一个远程调试会话。
xdebug.remote_cookie_expire_time integer类型,默认值=3600 该参数自2.2版本开始引入。指定远程调试的有效期限(单位:秒)。
xdebug.remote_log string类型,默认值= 指定远程调试的日志文件路径,用于记录远程调试的日志信息,该文件在调试过程将会一直以追加模式保持打开,所以默认情况下,文件内容不会被覆盖。
xdebug.remote_mode string类型,默认值=req 指定远程调试的连接模式,值可以为"req"或"jit"。req表示一旦运行脚本就立即连接调试客户端。jit表示当错误发生时才立即连接调试客户端。

需求:

在公司做后端开发的时候。经常遇到客户端安卓和苹果配合解决问题,很多时候需要分析数据和查看数据问题的地方。这就希望每次客户端在调用接口的时候。php能直接debug到断点调试分析问题。

环境:

客户端IDE:PHPStorm .ip=10.0.0.25 .port=9001 ,IDE key=PHPSTORM

qq%e5%9b%be%e7%89%8720161205103943

xdebug服务端 ip=10.0.0.24

配置php.ini:


zend_extension=/usr/local/php/lib/php/extensions/no-debug-zts-20151012/xdebug.so
[Xdebug]
xdebug.default_enable=1
xdebug.remote_enable=1
xdebug.remote_handler=dbgp
xdebug.remote_host=10.0.0.25
xdebug.remote_port=9001
#xdebug.remote_connect_back=1 #这里注释掉后,就只认remote_host的值,这样就可以把所有客户端的请求在remote_host的IDE上进行调试
xdebug.remote_autostart=1
xdebug.idekey = PHPSTORM
xdebug_session_start=1
xdebug_session_stop=0

php配置了xdebug后需要重启php-fmp,这样就解决所有客户端的请求在10.0.0.25的phpstorm上进行调试了的IDE上进行调试

注意:调式的时候。会阻塞其他客户端请求

原文链接:PHPStorm Xdebug 调试任意客户端的连接请求,转载请注明来源!

19