之前2月份就开始配置xdebug,始终没有成功。
今天看到一篇写得挺详细的文章,折腾了下没成功。后面看了看官方的文档,搞成功了
原因是在xdebug 3版本里,有些xdebug配置信息被丢弃或者更改了。
网上大部分的配置信息又都是以前的,难怪怎么配置都不成功。
比如以前的ip配置,端口配置
xdebug.remote_host
xdebug.remote_port
现在改成
xdebug.client_host
xdebug.client_port
怪不得一直连不上,配置名都改了,根本就没读取到我们的参数。。
最后我去官网看配置介绍,根据以前的旧配置写了份新的配置。
写得应该不算全,但是基本的功能都有了的
现在也是正常使用了。
那么我就分享我的配置经验吧,希望能帮到大家
环境windows 10 2004 64位
phpstorm 2021
phpstudy
php版本: 7.4.3
- 下载xdebug对应版本的dll文件
- 配置网站
- 配置php.ini
- 配置phpstorm
- 验证连接
1、下载xdebug对应版本的dll文件
点开下面这个网址
https://xdebug.org/wizard
把phpinfo()页面的信息复制进去,点击提交,弹出下载链接,选择下载
dll程序放在这个目录里面
C:\phpstudy\Extensions\php\php7.4.3nts\ext\
如果你的php版本和我的不同,路径不同,记得要改
2、配置网站
打开phpstudy
我这里是把www.www 对应成 c:\phpstudy\www, 端口是80
3、配置php.ini
[xdebug] zend_extension = "C:\phpstudy\Extensions\php\php7.4.3nts\ext\xdebug.dll" xdebug.mode= "debug" xdebug.output_dir = "C:\phpstudy\tmp\xdebug" #性能分析文件存放位置 xdebug.remote_handler = "dbgp" #步骤调试器,应该是单步、步进、步出调试的 xdebug.idekey="PHPSTORM" #不太懂这个意义,应该不重要 xdebug.client_host=127.0.0.1 #由remote_host替换过来了,就写本机的就行 xdebug.client_port=2333 #由remote_port替换过来了,调试端口
ok! 第三步完成,在php.exe目录下运行powershell执行.\php.exe -m
看到xdebug表示成功安装,没有正常安装应该就是版本不对。
但是有个地方要注意下,我没写注释的地方最好不要写注释,不然查看模块的时候有会这样的问题
4、配置phpstorm
配置php服务
配置成你装有xdebug的版本配置调试
端口与刚刚php.ini里边的xdebug.client_port一样
DBGp代理配置
不用解释了,端口都是和php.ini里边的xdebug.client_port一样,Ip填本机的。服务器配置
我做有hosts域名解析的,www.www实际上就是127.0.0.1,你也可以直接填localhost, 只要你知道该url指向的文件根目录在哪里就行了。
调试器选xdebug创建配置
新建php web page页面
照着这样填就好了
5、验证连接
url是刚刚phpstudy绑定的,脚本目录就是你url指向的文件根目录
比如我这个
情况1
如果你的是这张图片,代表着你还没建立其web服务。
1、检查验证脚本路径和URL是否配置正确
2、是不是忘记运行web容器了
情况2
代表着你已经可以访问Web服务了,但是xdebug未能成功加载
1、检查phpstudy上面运行的php版本。必须要与你装载了xdebug的php版本一致
2、检查php.ini里的xdebug片段。可以用以下最简配置试下能否成功验证。
记得修改路径和port
[xdebug] zend_extension="<path to xdebug extension>" xdebug.mode=debug xdebug.client_host=127.0.0.1 xdebug.client_port="<the port (9003 by default) to which Xdebug connects>"