解决windows上php xdebug 无法调试的问题


Posted in PHP onFebruary 19, 2020

有时候我们在使用php和nginx进行开发的时候,会出现这样的情况,明明扩展已经安装,但是就是无法调试成功。这个时候我们就要耐心去分析问题产生的原因。

第一步:查看php的版本比如是否是x64还是x86,看看xdebug是否激活,可以通过phpinfo();来查看扩展是否激活。

第二步:使用php -m再次检查xdebug是否安装。

这个时候可能会遇到 xdebug must be loaded as zend extension 。这个是因为我们在php.ini中配置extension的时候需要改成zend_extension才行,也就zend_extension=php_xdebug.dll。

第三步:我们需要配置xebug的调试语句,也就是需要在php.ini中填入下面的语句

[XDebug]

xdebug.remote_enable = 1

xdebug.remote_autostart = 1

xdebug.remote_port=9090

xdebug.remote_host=127.0.0.1

这里有个非常重要的一个参数就是remote_port=9090,默认的话会是9000,但是如果填写9000这个端口,可能就会导致你的php无法调试,因为9000端口会被nginx占用做代理。

如何查看9000端口是否被占用,可以在命令行输入netstat -anp|findstr "9000"这个命令,如果有程序占用9000端口,就会显示出来,我们可以查看到他的pid,接下来我们通过tasklist|findstr "2342"(2343是刚才查到的pid)来找到是哪个进程占用的这个端口,如果可以关闭的话,就关闭,不能关闭的话,我们就需要修改我们的端口号,比如笔者这里修改为9090.

总结:编程就是一个不断遇到问题,不断解决问题的过程,可能同样的代码,不同的环境就会导致结果不同,同样的环境,不同的参数也会导致运行不同,我们需要做的就是不断加深我们的理解,学会查看错误日志,学会分析程序运行逻辑,这样才能克服重重困难,勇攀高峰。

这里比如调试的问题,我们首先就需要明白调试的原理是什么,它本质上是另起一个进程去监听我们的调试,它首先是php的一个扩展,php的好多功能都是通过扩展来实现的,比如常用的许多图形库,加密算法等。当激活扩展后,php就会和扩展交互,这里的xdebug就是通过获取到的php运行信息来进行调试的。

总结

以上所述是小编给大家介绍的解决windows上php xdebug 无法调试的问题,希望对大家有所帮助,也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
PHP 危险函数解释 分析
Apr 22 PHP
Memcache 在PHP中的使用技巧
Feb 08 PHP
php中怎么搜索相关联数组键值及获取之
Oct 17 PHP
PHP获取当前url的具体方法全面解析
Nov 26 PHP
ThinkPHP文件上传实例教程
Aug 22 PHP
浅析PHP中的i++与++i的区别及效率
Jun 15 PHP
Laravel中使用FormRequest进行表单验证方法及问题汇总
Jun 19 PHP
php生成与读取excel文件
Oct 14 PHP
PHP Post获取不到非表单数据的问题解决办法
Feb 27 PHP
PHP addAttribute()函数讲解
Feb 03 PHP
Laravel 使用查询构造器配合原生sql语句查询的例子
Oct 12 PHP
laravel框架select2多选插件初始化默认选中项操作示例
Feb 18 PHP
laravel框架路由分组,中间件,命名空间,子域名,路由前缀实例分析
Feb 18 #PHP
laravel框架select2多选插件初始化默认选中项操作示例
Feb 18 #PHP
laravel框架使用FormRequest进行表单验证,验证异常返回JSON操作示例
Feb 18 #PHP
PHP For循环字母A-Z当超过26个字母时输出AA,AB,AC
Feb 16 #PHP
php反序列化长度变化尾部字符串逃逸(0CTF-2016-piapiapia)
Feb 15 #PHP
浅析PHP反序列化中过滤函数使用不当导致的对象注入问题
Feb 15 #PHP
php 函数中静态变量使用的问题实例分析
Mar 05 #PHP
You might like
php下实现一个阿拉伯数字转中文数字的函数
2008/07/10 PHP
利用php实现禁用IE和火狐的缓存问题
2012/12/03 PHP
一段实用的php验证码函数
2016/05/19 PHP
Thinkphp通过一个入口文件如何区分移动端和PC端
2017/04/18 PHP
php curl获取到json对象并转成数组array的方法
2018/05/31 PHP
将中国标准时间转换成标准格式的代码
2014/03/20 Javascript
js防止页面被iframe调用的方法
2014/10/30 Javascript
JavaScript设计模式之工厂方法模式介绍
2014/12/28 Javascript
JavaScript控制网页层收起和展开效果的方法
2015/04/15 Javascript
js实现仿qq消息的弹出窗效果
2016/01/06 Javascript
JSON简介以及用法汇总
2016/02/21 Javascript
node.js cookie-parser之parser.js
2016/06/06 Javascript
Koa项目搭建过程详细记录
2018/04/12 Javascript
Vue项目中使用better-scroll实现一个轮播图自动播放功能
2018/12/03 Javascript
js实现飞机大战小游戏
2020/08/26 Javascript
Python性能优化的20条建议
2014/10/25 Python
python使用正则表达式分析网页中的图片并进行替换的方法
2015/03/26 Python
Python之日期与时间处理模块(date和datetime)
2017/02/16 Python
Python实现购物程序思路及代码
2017/07/24 Python
python获取微信小程序手机号并绑定遇到的坑
2018/11/19 Python
Pandas之Fillna填充缺失数据的方法
2019/06/25 Python
python 读取修改pcap包的例子
2019/07/23 Python
Ubuntu16.04安装python3.6.5步骤详解
2020/01/10 Python
python实现简单的购物程序代码实例
2020/03/03 Python
改变 Python 中线程执行顺序的方法
2020/09/24 Python
AmazeUI 折叠面板的实现代码
2020/08/17 HTML / CSS
纽约服装和生活方式品牌:Saturdays NYC
2017/08/13 全球购物
物流专业求职计划书
2014/01/10 职场文书
家长给小学生的评语
2014/01/30 职场文书
2014新年元旦活动策划方案
2014/02/18 职场文书
对标管理实施方案
2014/03/12 职场文书
2014国庆节幼儿园亲子活动方案
2014/09/16 职场文书
民主评议政风行风整改方案
2014/09/17 职场文书
寒假社会实践个人总结
2015/03/06 职场文书
护理专业自荐信范文
2015/03/06 职场文书
Python一行代码实现自动发邮件功能
2021/05/30 Python