phpstorm配置xdebug 3.0最新教程!!!配置不成功的快看!
前言
之前2月份就开始配置xdebug,始终没有成功。
今天看到一篇写得挺详细的文章,心血来潮又折腾了下,可惜没成功。
验证始终说我配置错误
后面去阅读官方的文档,修改了些配置,居然搞成功了!!
nice

原因是在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
注意我使用的是旧版本的phpstorm,如果是新版本的直接按照着分类大名找
配置流程
- 下载xdebug对应版本的dll文件
- 配置网站
- 配置
php.ini - 配置
phpstorm - 验证连接
- 安装浏览器调试插件
1、下载xdebug对应版本的dll文件
点开下面这个网址
https://xdebug.org/wizard
把phpinfo()页面的信息复制进去,点击提交,弹出下载链接,选择下载
将下载的dll文件放到php\php版本\ext\里面
我的是
C:\phpstudy\Extensions\php\php7.4.3nts\ext\
2、配置网站
打开phpstudy
我的主域名是www.www
网站根目录是 c:\phpstudy\www
端口是80

根据你自己的网站配置进行更改
3、配置php.ini
进入相对应php版本的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"
#由remote_host替换过来了,就写本机的就行
xdebug.client_host=127.0.0.1
#由remote_port替换过来了,调试端口
xdebug.client_port=2333
在php.exe目录下运行cmd执行.\php.exe -m

看到xdebug表示成功安装
4、配置phpstorm
配置php服务

配置的php版本是你装有xdebug的版本配置调试

端口与刚刚php.ini里边的xdebug.client_port一样
DBGp代理配置

不用解释了,端口都是和php.ini里边的xdebug.client_port一样,主机填本机的。服务器配置

我做有hosts域名解析的,www.www实际上就是127.0.0.1,你也可以直接填localhost, 只要你知道该域名指向的文件根目录在哪里就行了。
后面验证会用到域名对应的文件根目录
调试器选xdebug
- 创建配置

新建php web page页面

照着这样填就好了,默认浏览器填你喜欢用的,最好就火狐、chorme、edge这三个,后面还要安装插件
5、验证连接


url是刚刚phpstudy绑定的,脚本目录就是你url指向的文件根目录

比如我这个
6、安装浏览器调试插件
直接搜索xdebug helper。安装成功后右键进入扩展选项

安装这样配置,点击save

如果验证失败怎么办?
情况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>"
其他情况:
2021/8/24日添加
遇到下面这个问题。

如果确定其他步骤都正确了。那问题原因是验证脚本和验证url不指向同一个目录导致的。有以下两种解决方式。
方式一

方式二

按照上面都检查一遍,不行可以留言给我。
验证是否能够调试
在
phpstorm开启xdebug监听

确保开启了
phpstudy。或者运行了web容器

点击调试

成功捕获到数据

参考资料:
官方配置教程
https://www.jetbrains.com/help/phpstorm/configuring-xdebug.html#updatingPhpIni官方配置参数资料
https://xdebug.org/docs/upgrade_guide#changed-xdebug.auto_trace其他配置资料等。
phpstorm配置xdebug 3.0最新教程!!!配置不成功的快看!的更多相关文章
- phpstorm配置Xdebug进行调试PHP教程
运行环境: PHPSTORM版本 : 8.0.1 PHP版本 : 5.6.2 xdebug版本:php_xdebug-2.2.5-5.6-vc11-x86_64.dll ps : php版本和xdeb ...
- phpstorm配置Xdebug进行调试PHP教程_php技巧_脚本之家
运行环境: PHPSTORM版本 : 8.0.1 PHP版本 : 5.6.2 xdebug版本:php_xdebug-2.2.5-5.6-vc11-x86_64.dll ps : php版本和xdeb ...
- phpstorm开启xdebug断点调试,断点调试不成功来这里
感谢一下两篇博主的文章 其他的就... https://paper.seebug.org/308/ https://www.cnblogs.com/jice/p/5064838.html 首先安装xd ...
- 史上最走心webpack4.0中级教程——配置之外你应该知道的事
<webpack4.0各个击破系列>适合不满足于只会配置webpack但一时间又看不懂源码的中级读者.我没法保证这个系列是最好的,但至少能保证每一篇博文都跟那些Ctrl+C和Ctrl+V的 ...
- PHPStorm配置xdebug(phpStudy/wamp)
一.下载并配置XDebug wamp环境: 1.获取xdebug
- phpstorm调试配置 Xdebug
这已经楼主第二次因为phpstorm的调试配置折腾了几个小时,这次一定要记下来!!! 以Xdebug chrome浏览器为例 一:安装 JetBrains IDE Support 二:安装 Xdebu ...
- phpstorm 配置 xdebug 详细教程
作者:半船 来源:CSDN 原文:https://blog.csdn.net/yinhangbbbbb/article/details/79247331 花了一周多时间最详细的整理了PHPSTORM+ ...
- 使用zend studio配置Xdebug调试PHP教程
这里看过上面的文章后写一下自己的想法. 最近安装了zend studio 10.5,下载了破解文件.开始是下载了10.0的版本,但是注册码不正确.所以只能安装最新的10.5了. 接下来进行PHP代码调 ...
- PhpStorm连接Docker容器配置xdebug断点调试
本教程主要演示xdebug在PhpStorm中配置方法. 一.环境说明 1.Mac笔记本(本教程演示过程使用的是Mac OS操作系统,和windows环境是有区别的,这一点需要特别注意): 2.在Ma ...
随机推荐
- LGP6146题解
思维僵化了,习惯按照右端点排序,没想到是按照左端点排序... 考虑从左到右依次加入线段,考虑贡献. 设前 \(i\) 条线段的答案为 \(dp[i]\). 考虑两种情况: 不加,贡献为 \(dp[i- ...
- [差分数组] LeetCode789 得分最高的最小轮调
LeetCode 得分最高的最小轮调 今天当然CV了因为今天比较忙,所以直接走算法,因为什么都不做的话并不符合社会主义核心价值观,今天小学一手查分数组. 题目:并不存在CV了还写什么题解 算法背景: ...
- Flask 之 蓝图
蓝图,听起来就是一个很宏伟的东西 在Flask中的蓝图 blueprint 也是非常宏伟的 它的作用就是将 功能 与 主服务 分开怎么理解呢? 比如说,你有一个客户管理系统,最开始的时候,只有一个查看 ...
- 6月11日 python学习总结 框架理论
Web框架本质及第一个Django实例 Web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端. 这样我们就可以自己实现Web ...
- FOC中的电流采样
电流采样是FOC的基础,具体有电流传感器采样.电阻采样,电阻采样以其简单低成本的应用广泛使用. 电阻法采样有单电阻采样.双电阻采样.三电阻采样. 一. 单电阻采样 单电阻采用分时采样,在一个PWM周期 ...
- Python中将字典转为成员变量
技术背景 当我们在Python中写一个class时,如果有一部分的成员变量需要用一个字典来命名和赋值,此时应该如何操作呢?这个场景最常见于从一个文件(比如json.npz之类的文件)中读取字典变量到内 ...
- TCP和UDP协议?
TCP(Transmission Control Protocol:传输控制协议:面向连接,可靠传输 UDP(User Datagram Protocol):用户数据报协议:面向无连接,不可靠传输
- springBoot 多配置文件切换之profile
说明: 我们平时工作,有开发环境,和生产环境,利用springboot的多profile配置,可以很轻松切换配置. 实现方式1(推荐): 配置文件命名遵循:application-{开发模式}.pro ...
- 什么是Spring的MVC框架?
Spring 配备构建Web 应用的全功能MVC框架.Spring可以很便捷地和其他MVC框架集成,如Struts,Spring 的MVC框架用控制反转把业务对象和控制逻辑清晰地隔离.它也允许以声明的 ...
- 为什么 Thread 类的 sleep()和 yield ()方法是静态的?
Thread 类的 sleep()和 yield()方法将在当前正在执行的线程上运行.所以在其他处于等待状态的线程上调用这些方法是没有意义的.这就是为什么这些方法是静态的.它们可以在当前正在执行的线程 ...