解决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 操作excel文件的方法小结
Dec 31 PHP
PHP中如何判断AJAX提交的数据
Feb 05 PHP
PHP统一页面编码避免乱码问题
Apr 09 PHP
php将金额数字转化为中文大写
Jul 09 PHP
php自定义分页类完整实例
Dec 25 PHP
CodeIgniter自定义控制器MY_Controller用法分析
Jan 20 PHP
jquery不支持toggle()高(新)版本的问题解决
Sep 24 PHP
PHP中error_reporting函数用法详细介绍
Jun 11 PHP
PHP基于双向链表与排序操作实现的会员排名功能示例
Dec 26 PHP
PHP getName()函数讲解
Feb 03 PHP
Thinkphp5 如何隐藏入口文件index.php(URL重写)
Oct 16 PHP
PHP 计算至少是其他数字两倍的最大数的实现代码
May 26 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通过session防url攻击方法
2014/12/10 PHP
PHP人民币金额转大写实例代码
2015/10/02 PHP
asp函数split()对应php函数explode()
2019/02/27 PHP
PHP下用Swoole实现Actor并发模型的方法
2019/06/12 PHP
基于laravel where的高级使用方法
2019/10/10 PHP
Javascript 网页黑白效果实现代码(兼容IE/FF等)
2010/04/23 Javascript
javascript jq 弹出层实例
2013/08/25 Javascript
jQuery的几个我们必须了解的特点
2015/05/03 Javascript
AngularJS 实现按需异步加载实例代码
2015/10/18 Javascript
JS深度拷贝Object Array实例分析
2016/03/31 Javascript
JSON 数据详解及实例代码分析
2017/01/20 Javascript
JavaScript编写一个贪吃蛇游戏
2017/03/09 Javascript
React复制到剪贴板的示例代码
2017/08/22 Javascript
使用JS获取SessionStorage的值
2018/01/12 Javascript
js数组去重的N种方法(小结)
2018/06/07 Javascript
JS将指定的某个字符全部转换为其他字符实例代码
2020/10/13 Javascript
Python中绑定与未绑定的类方法用法分析
2016/04/29 Python
Python多进程multiprocessing.Pool类详解
2018/04/27 Python
Python判断两个list是否是父子集关系的实例
2018/05/04 Python
Python实现二叉搜索树BST的方法示例
2019/07/30 Python
如何用Python 加密文件
2020/09/10 Python
Python在后台自动解压各种压缩文件的实现方法
2020/11/10 Python
python中lower函数实现方法及用法讲解
2020/12/23 Python
中东奢侈品市场:Coveti
2019/05/12 全球购物
Hello Molly美国:女性时尚在线
2019/08/26 全球购物
当文件系统受到破坏时,如何检查和修复系统?
2012/03/09 面试题
医学生实习自我鉴定
2013/09/27 职场文书
宿舍保安职务说明书
2014/02/25 职场文书
超市店庆活动方案
2014/08/31 职场文书
服务行业演讲稿
2014/09/02 职场文书
机关党总支领导班子整改方案
2014/09/20 职场文书
关于对大人不礼貌的检讨书
2014/09/29 职场文书
2016中秋节月饼促销广告语
2016/01/28 职场文书
大学社团活动总结怎么写
2019/06/21 职场文书
晶体管单管来复再生式收音机
2021/04/22 无线电
通过Qt连接OpenGauss数据库的详细教程
2021/06/23 PostgreSQL