centos php5.5.14 xdebug-2.3.2.tgz
1. xdebug 一定安装与php版本一致的 (我用的都是最新版本没问题!!!)
xdebug 下载路径
https://pecl.php.net/get/xdebug-2.3.2.tgz
http://www.xdebug.org/
开始安装
[root@mc1 src]# tar -xvzf xdebug-2.3.2.tgz
cd /usr/local/src/xdebug-2.3.2]
[root@mc1 xdebug-2.3.2]# /apps/svr/php/bin/phpize (这个是在php安装路径下)
开始编译
./configure --with-php-config=/apps/svr/php/bin/php-config (不懂可以看看 ./configure --help)
make && make install
看到这个就ok了
ls 看看
xdebug.so 已经存在
接下来 让它与 php.ini 连接起来吧(php.ini 不懂可以 到php.info()看)
xdebug 的参数 可以参考下这个连接
http://www.cnblogs.com/zjczoo/archive/2012/03/24/xdebug-debug.html
[xdebug]
;扩展文件路径
;开启自动跟踪
xdebug.auto_trace = On
;开启异常跟踪
xdebug.show_exception_trace = On
;开启远程调试自动启动
xdebug.remote_autostart = On
;开启远程调试
xdebug.remote_enable = On
;收集变量
xdebug.collect_vars = On
;收集返回值
xdebug.collect_return = On
;收集参数
xdebug.collect_params = On
;跟踪格式
xdebug.trace_format = 0
;输出文件夹
xdebug.trace_output_dir=/tmp/xdebug
;输出文件名格式
xdebug.trace_output_name = trace.%c.%p
;开启分析器
xdebug.profiler_enable = On
;输出路径
xdebug.profiler_output_dir = /tmp/xdebug
;输出文件名格式
xdebug.profiler_output_name = cachegrind.out.%p
;记录内存使用情况,//phpfensi.com
xdebug.show_mem_delta = On
保存 wq 重启 php 呵呵,,出现下面的就是成功了!!
调试:
我们先写一个可以导致执行出错的程序,例如尝试包含一个不存在的文件。
testXdebug.php
然后通过浏览器访问,我们惊奇地发现,出错信息变成了彩色的了
注意,,,如果不出现 上面的错误提示的话,,估计是你的php.ini display_eror 关闭掉了 或者端口 被防火墙关闭了,,,注意排除问题
配置Zend Studio 支持xdebug
这里的配置很重要
选择Zend Studio 的 Window 》 Preference 》 PHP 》Installed Debuggers 双击 Xdebug,弹出对话框如下图
Debug Port 设为跟php.ini中设置的一样(默认是9000)。
Accept remote session(JIT) 选择localhost
允许浏览器访问网站时zend studio自动打开文件开始调试。
选项说明: http://www.111cn.net
off: 关闭浏览器访问时打开调试功能;
localhost: 通过localhost访问网页的时候打开调试。
any:只要访问服务器上的php都打开调试;
prompt:访问服务器上的php时弹出询问是否要调试。
一旦打开zend studio允许xebug调试,所有访问php页面都会进入调试。
我们可以使用easy xdebug火狐插件可在客户端控制是否开启调试。
1、首先php.ini设置
xdebug.remote_autostart = 0
不自动启动调试。
2、安装火狐插件easy xdebug,
安装好该插件后,点击如下图右下角小绿虫后,虫子上面有个小红点,这时候我们访问测试服务器的时候,Zend Studio就回自动弹出调试。
[xdebug]
;扩展文件路径
zend_extension = /usr/lib/php5/20090626+lfs/xdebug.so
;开启自动跟踪
xdebug.auto_trace = On
;开启异常跟踪
xdebug.show_exception_trace = On
;开启远程调试自动启动
xdebug.remote_autostart = On
;开启远程调试
xdebug.remote_enable = On
;收集变量
xdebug.collect_vars = On
;收集返回值
xdebug.collect_return = On
;收集参数
xdebug.collect_params = On
;跟踪格式
xdebug.trace_format = 0
;输出文件夹
xdebug.trace_output_dir=/tmp/xdebug
;输出文件名格式
xdebug.trace_output_name = trace.%c.%p
;开启分析器
xdebug.profiler_enable = On
;输出路径
xdebug.profiler_output_dir = /tmp/xdebug
;输出文件名格式
xdebug.profiler_output_name = cachegrind.out.%p
;记录内存使用情况,//phpfensi.com
xdebug.show_mem_delta = On