解决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.MVC的模板标签系统(一)
Sep 05 PHP
利用PHP实现智能文件类型检测的实现代码
Aug 02 PHP
PHP递归调用的小技巧讲解
Feb 19 PHP
PHP stripos()函数及注意事项的分析
Jun 08 PHP
php二维数组用键名分组相加实例函数
Nov 06 PHP
php加密解密实用类分享
Jan 07 PHP
PHP include任意文件或URL介绍
Apr 29 PHP
php实现的操作excel类详解
Jan 15 PHP
phpinfo() 中 Local Value(局部变量)Master Value(主变量) 的区别
Feb 03 PHP
php的常量和变量实例详解
Jun 27 PHP
php写入mysql中文乱码的实例解决方法
Sep 17 PHP
Laravel 验证码认证学习记录小结
Dec 20 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
laravel框架使用极光推送消息操作示例
Feb 15 #PHP
You might like
vBulletin HACK----关于排版的两个HACK
2006/10/09 PHP
PHP 第三节 变量介绍
2012/04/28 PHP
PHP去掉从word直接粘贴过来的没有用格式的函数
2012/10/29 PHP
详解PHP导入导出CSV文件
2014/11/03 PHP
PHP使用mkdir创建多级目录的方法
2015/12/22 PHP
PHP使用http_build_query()构造URL字符串的方法
2016/04/02 PHP
PHP扩展框架之Yaf框架的安装与使用
2016/05/18 PHP
PHP会员找回密码功能的简单实现
2016/09/05 PHP
简单谈谈 php 文件锁
2017/02/19 PHP
真正的JQuery.ajax传递中文参数的解决方法
2011/05/28 Javascript
JS图片根据鼠标滚动延时加载的实例代码
2013/07/13 Javascript
Javascript实现快速排序(Quicksort)的算法详解
2015/09/06 Javascript
js实现tab切换效果实例
2015/09/16 Javascript
微信小程序 MINA文件结构
2016/10/17 Javascript
Javascript中字符串和数字的操作方法整理
2017/01/22 Javascript
详解windows下vue-cli及webpack 构建网站(三)使用组件
2017/06/17 Javascript
jQuery中图片展示插件highslide.js的简单dom
2018/04/22 jQuery
JS实现的简单tab切换功能完整示例
2019/06/20 Javascript
文章或博客自动生成章节目录索引(支持三级)的实现代码
2020/05/10 Javascript
[01:46]DOTA2上海特锦赛小组赛英文解说KotlGuy采访
2016/02/27 DOTA
Python 实例方法、类方法、静态方法的区别与作用
2019/08/14 Python
pytorch 在网络中添加可训练参数,修改预训练权重文件的方法
2019/08/17 Python
django 文件上传功能的相关实例代码(简单易懂)
2020/01/22 Python
在Python 的线程中运行协程的方法
2020/02/24 Python
python用什么编辑器进行项目开发
2020/06/17 Python
matplotlib部件之套索Lasso的使用
2021/02/24 Python
马来西亚与新加坡长途巴士售票网站:BusOnlineTicket.com
2018/11/05 全球购物
HelloFresh奥地利:立即订购烹饪盒
2019/02/22 全球购物
ManoMano英国:欧洲第一家专注于DIY和园艺市场的电商平台
2020/03/12 全球购物
科颜氏香港官方网店:Kiehl’s香港
2021/03/07 全球购物
班委竞选演讲稿
2014/04/28 职场文书
公务员四风问题对照检查材料整改措施
2014/09/26 职场文书
城南旧事读书笔记
2015/06/29 职场文书
《认识年月日》教学反思
2016/02/19 职场文书
TV动画《史上最强大魔王转生为村民A》番宣CM公布
2022/04/01 日漫
PostgreSQL逻辑复制解密原理解析
2022/09/23 PostgreSQL