http://my.oschina.net/012345678/blog/152889

Ecplise + Xdebug 一波三折终于能单步调试了

发表于2年前(2013-08-15 15:50)   阅读(1260) | 评论(0) 14人收藏此文章, 我要收藏
赞0

寻找 会’偷懒’的开发者线下公开课,报名即享受免费体验云主机

php Version 5.2.13

apache  2.2

Xdebug  2.1.2 VC6 32bit

eclipsePHP 官网的

以上全部下载齐全,保证版本正确。

1:将下载的Xdebug文件复制到安装php文件的ext文件下

2:设置phpini文件,支持Xdebug, 在最后添加

[Xdebug]
zend_extension_ts="D:/Program Files/php-5.2.13-Win32/ext/php_xdebug-2.1.2-5.2-vc6.dll"
;开启自动跟踪
xdebug.auto_trace=1
;开启异常跟踪
xdebug.show_exception_trace=1
;开启远程调试自动启动
xdebug.remote_autostart=1
;开启远程调试
xdebug.remote_enable=1

xdebug.collect_params=On
xdebug.collect_return=On
;设定函数调用监测信息的输出文件的路径。
xdebug.trace_output_dir="d:\xdebug"
;打开效能监测器。
xdebug.profiler_enable=On  
;设定效能监测信息输出文件的路径。
xdebug.profiler_output_dir="d:\xdebug" 
xdebug.max_nesting_level=2000
xdebug.remote_host=localhost 
xdebug.remote_port=9000 
xdebug.remote_handler=dbgp

3:设置Eclipse,

window - preferences 下图:

4:继续如下图:

5:网上从没有介绍的关键点来了,下几张图很重要

点击,如下:

再点击,如下:

重点来了,1处可以任意填写  2处填写时注意,要和你apache  httpd.conf中,下图红色箭头处一致,

在eclipse里新建一个项目叫php:

如下图;

同时php下新建一个index.php,在浏览器访问www.test.com,就能看到index.php里的内容了(以上注意两点,第一,我们这里叫php,后面要用到,第二,项目的路径要和DocumentRoot D:/workspace/Test中一致)

现在只要不用Xdebug是没问题的,浏览器正常浏览,直接www.test.com就行。

现在Xdebug,在index.php中打个断点,鼠标右键,DebugAS -> Debug Web Page->图:

现在点击OK,会报404,根本访问不了,断点也不能用,仔细看LunchURL会发现是http://www.test.com//php/index.php,换成绝对路径就是D:/workspace/Test/php/index.php,而电脑上根本没有这个地址,index.php实际地址是D:/workspace/Test/index.php,所以我们只要把php去掉,让成为正确的url地址就可以了,或者把建项目的时候一开始就叫Test,这样变成D:/workspace/Test/Test/index.php,再把 httpd.conf改成<VirtualHost *:80>
                        ServerAdmin admin@t.com
                        DocumentRoot D:/workspace
                        ServerName www.test.com
                        <Directory "D:/workspace">
                        AllowOverride All
                        </Directory>
                        </VirtualHost>

重启apache,现在www.test.com 就是D:/workspace,点击右键debug时,你会发现urL变成了www.test.com/Test/index.php,换成绝对路径就是D:/workspace//Test/index.php,这个地址是存在的。

总结,之所以不能Xdebug是因为路径问题,而这些路径的在debug时,拼接有误造成的,你可以到

这个小虫子的菜单,debug  configrations里看下,你会发现奥秘的:如下图:

Ecplise + Xdebug 一波三折终于能单步调试了的更多相关文章

  1. phpstrom 与 xdebug 配合实现PHP单步调试

    不说废话,直接开始. 第一步: 安装并配置xdebug 安装 可以从官网直接下载对应php版本的xdebug,下载地址:  https://xdebug.org/download.php 配置,典型的 ...

  2. zend+xdebug单步调试

    也允许使用第三方调试工具,今天以PHP教程形式分享如何使用zend studio配置Xdebug来调试PHP程序. 使用Xdebug在zend studio中调试PHP源码之前,请务必安装配置Xdeb ...

  3. PhpStorm+Xdebug配置单步调试PHP

    (一)php安装xdebug扩展,PHPStorm+XDebug单步调试 (二)PHPStorm配置XDebug (三)PHPStorm使用XDebug调试 (四)PhpStorm+Xdebug配置单 ...

  4. php安装xdebug扩展,PHPStorm+XDebug单步调试

    (一)php安装xdebug扩展,PHPStorm+XDebug单步调试 (二)PHPStorm配置XDebug (三)PHPStorm使用XDebug调试 (四)PhpStorm+Xdebug配置单 ...

  5. PHP、TP6框架及JavaScript的单步调试

    目录 一.PHP程序的调试 1. 单个PHP程序的调试 2. PHP框架代码的调试 二.JavaScript程序的调试 三.总结 参考资料:https://www.bilibili.com/video ...

  6. VC++6.0 Debug单步调试

    相信大家对谭浩强童鞋都不陌生,想当年,是他 引领我们步入了C的殿堂,我们从他那里学会了如何写代码,他却没有教我们如何Debug,而我们伟大的老师,也对此只字不提.相信很少有人可以一次性写出 完全正确的 ...

  7. 一种 Visual Studio 不能单步调试(函数调用)问题

    Visual Studio每次出"莫名其妙的问题"的时候都非常棘手.这次遇到这么一个问题: 新建的Windows的控制台窗口程序(C++),编译链接运行没有问题.但是想单步调试一下 ...

  8. phpstorm中使用xdebug配置cli模式的调试

    这里略去xdebug的安装,安装很简单可以下载源码包,动态编译进去! 环境: Dev 服务器(IP:192.168.2.100),安装phpstorm,用来做开发任务! Server服务器(IP:19 ...

  9. 如何使用vs2012单步调试uGUI(unity3d 5.3f4)

    下载uGUI源代码 uGUI源代码地址:https://bitbucket.org/Unity-Technologies/ui 下载代码工具:tortoisehg-3.6.2-x64.msi http ...

随机推荐

  1. JS图片延迟加载分析及简单的demo

    JS图片延迟加载 图片延迟加载也称 "懒加载",通常应用于图片比较多的网页,比如 "美丽说首页","蘑菇街"等一些导购网站上用的比较多,或者 ...

  2. Wordpress模板制作、改造、设计

    如何定义index.php以及如何派生出其它文件,在index.php文件中,在body元素内,新建如下结构化标记元素,各元素都带有不同的id属性: <div id=”page”> < ...

  3. Harris角点

    1. 不同类型的角点 在现实世界中,角点对应于物体的拐角,道路的十字路口.丁字路口等.从图像分析的角度来定义角点可以有以下两种定义: 角点可以是两个边缘的角点: 角点是邻域内具有两个主方向的特征点: ...

  4. hdu 1150 Machine Schedule 最少点覆盖转化为最大匹配

    Machine Schedule Time Limit: 1 Sec  Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php? ...

  5. 动态设置form表单的元素值

    因为经常用到的功能,所以我想到封装一个函数,用起来更方便快捷.. 先来看效果图如下: var data = {a:'aaaa', b:'2', 'c':[1,2,4]} 这就相当于 ajax 返回的j ...

  6. Apache服务器的下载与安装

    关于PHP的运行环境搭载,网上文章繁杂,遂自己整理一篇! PHP的运行必然少不了服务器的支持,何为服务器?通俗讲就是在一台计算机上,安装个服务器软件,这台计算机便可以称之为服务器,服务器软件和计算机本 ...

  7. CodeForces 433C Ryouko's Memory Note-暴力

                                             Ryouko's Memory Note Time Limit:1000MS     Memory Limit:262 ...

  8. 微信公众平台开发3:订阅事件subscribe处理

    新用户关注微信公众平台,将产生一个订阅事件,即subscribe事件,默认代码中没有对这一事件进行相应处理. 在新用户关注公众平台后,可能想知道该平台提供了哪些功能,以及怎样使用该平台,通俗一点讲就是 ...

  9. POJ2836 Rectangular Covering(状压DP)

    题目是平面上n个点,要用若干个矩形盖住它们,每个矩形上至少要包含2个点,问要用的矩形的面积和最少是多少. 容易反证得出每个矩形上四个角必定至少覆盖了两个点.然后就状压DP: dp[S]表示覆盖的点集为 ...

  10. C# 序列化(Serialize)与反序列化(Deserialize)ZZ

    序列化又称串行化,是.NET运行时环境用来支持用户定义类型的流化的机制.其目的是以某种存储形成使自定义对象持久化,或者将这种对象从一个地方传输到另一个地方. .NET框架提供了两种种串行化的方式:1. ...