vim+xdebug调试PHP
一、安装xdebug
1、编译安装xdebug,也可以使用pecl install xdebug
wget http://xdebug.org/files/xdebug-2.3.2.tgz
tar -zxvf xdebug-2.3.2.tgz
cd xdebug-2.3.2
phpize
./configure --enable-xdebug --with-php-config=/data/php/bin/php-config
make && make install
这一步会 生成xdebug.so文件
2、添加配置文件
zend_extension =xdebug.so
zend_debugger.allow_hosts=127.0.0.1
zend_debugger.expose_remotely=always
zend_debugger.httpd_uid=-1
xdebug.auto_trace = on
xdebug.auto_profile = on
xdebug.collect_params = on
xdebug.collect_return = on
xdebug.profiler_enable = on
xdebug.trace_output_dir = /tmp
xdebug.profiler_output_dir=/tmp/xdebug
xdebug.trace_output_name = trace.%c.%p xdebug.profiler_output_name=cachegrind.out.%s
xdebug.dump.GET = *
xdebug.dump.POST = *
xdebug.dump.COOKIE = *
xdebug.dump.SESSION = *
xdebug.var_display_max_data = 4056
xdebug.var_display_max_depth = 5 xdebug.remote_enable=on
xdebug.remote_handler=dbgp
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9010
xdebug.remote_autostart=1
3、验证
可以通过phpinfo查看
二、安装vim插件
1、下载
wget http://www.vim.org/scripts/download_script.php?src_id=7285 下载完毕后,将解压将文件放入$HOME/.vim/plugin (mkdir ~/.vim/plugin) 然后访问,http://localhost/blog/index.php?XDEBUG_SESSION_START=1 新建.vimrc文件,加入配置如下: let g:debuggerMaxDepth = 5 let g:debuggerPort = 9010 注意:要与xdebug.ini中端口配置一致。
2、调试
用vim打开此文件,用可 :Bp 设置断点,然后安 F5 键, 你将会看见waiting for a new connection on port 9000 for 5 seconds… ,此时在5秒内刷新刚才那个页面,即可在vim中看到调试界面。
如果出现 <type 'exceptions.AttributeError'>, AttributeError("DbgProtocol instance has no attribute 'stop'", 则说明没有配置成功,
1、xdebug.remote_* 没有配置好
2、要么是url尾部上没有加入 ?XDEBUG_SESSION_START=1
3、要么是你没有在5秒内刷新页面
注意事项
实际过程中,如果你发现安装完成仍然无法正常的调试PHP,极可能是下面的原因造成的:
一、Xdebug加载不成功
可能是由于PHP是”Debug Build”,那么php.ini里不应当用“zend_extension=/<extension_dir>/xdebug.so”,而应该用“zend_extension_debug=/<extension_dir>/xdebug.so”;
其它方面就是要注意xdebug.so路径是否正确,Apache服务或者是fastcgi服务有没有重启。
二、 调试会话已经过期
XDebug 通过一个Cookie来判断你是否进行调试对话,请注意这个Cookie的过期时间是1个小时。
三、SeLinux
修改配置文件/etc/selinux/config,将”SELINUX=”那一句配置改成”SELINUX=disabled”,然后重启机器。
vim+xdebug调试PHP的更多相关文章
- 用netbeans和xdebug调试php的配置
xdebug的chrome.firefox插件 chrome:Xdebug helper firefox:easy Xdebug ----------------------------------- ...
- zend stuido 12.5的插件安装和xdebug调试器的配置和和配置注意
参考: zend stuido 12.5的插件安装 zend 12.5 安装插件是按类别进行分类了的, 而且是在欢迎 界面就可以直接安装, 安装后,要重启zend才能生效 版式设计的一个基本点就是: ...
- 关于用netbeans和xdebug调试php的配置
之前用过一段时间在apache,netbeans下通过xdebug调试.感觉不错,最近事情不多想从新配置下,是基于最新版本的php5.4做的,后来参考了下xdebug的官网说明完成的.官网地址:htt ...
- 使用zend studio配置Xdebug调试PHP教程
这里看过上面的文章后写一下自己的想法. 最近安装了zend studio 10.5,下载了破解文件.开始是下载了10.0的版本,但是注册码不正确.所以只能安装最新的10.5了. 接下来进行PHP代码调 ...
- 用Eclipse+xdebug调试PHP总是在首行自动断点解决方法
问题描述: 使用Eclipse+PDT+xdebug调试PHP程序时,总是在程序的第一行(首行)自动断点,不方便调试. 解决方法: 分别在下面3个位置配置,取消 Break at First Line ...
- wamp下安装php的xdebug调试的方法
wamp下安装php的xdebug调试的方法 将下载好的php_xdebug-2.1.2-5.2-vc6.dll放在D:/wamp/php/ext/php_xdebug-2.1.2-5.2-vc6.d ...
- IDEA+PHP+XDebug调试配置
XDebug调试配置 临时需要调试服务器上的PHP web程序,因此安装xdebug,下面简单记录 安装xdebug 下载最新并解压 wget https://xdebug.org/files/xde ...
- 使用phpStorm编辑器进行PHP代码的xdebug调试
首先需要安装Xdebug,如果没有安装可以查看PHP断点调试工具Xdebug的安装这篇文章.phpStorm是开发者经常用的一款编辑器,当然也支持Xdebug调试,下面说一下配置步骤. phpStor ...
- PhpStorm 破解及 XDebug 调试
PhpStorm 破解及 XDebug 调试 PhpStorm 破解 PhpStorm 10.0.2 破解 地址:http://jingyan.baidu.com/article/20095761cb ...
随机推荐
- 跨库查询(OpenDataSource)与链接服务器(Linking Server)
一:跨库查询 Openrowset/opendatasource() is an ad-hoc method to access remote server's data. So, if you on ...
- Latex初学者入门(三)-- 用BibTeX生成参考文献
昨boss要往期Elsevier 刊投文章,距上次排版貌似过了好久,生疏了不少,翻出以前的写的一些笔记再复习复习. 不过这次好多了,仅仅是改个格式,原始的文章已经用latex编写过了(个人感觉最头疼的 ...
- 【BZOJ】【1923】【Sdoi2010】外星千足虫
高斯消元解Xor方程组 ZYF Orz 这题……不作死就不会死T^T,用bitset确实比较快,而且可以从string直接转成bitset(构造函数). 但问题是我把转过来以后的顺序搞反了……原本以为 ...
- vb.net结构化异常处理和“邪用”
vb.net中的错误处理包括两种:非结构化异常处理技术和结构化异常处理.非结构化异常处理技术在vb 6.0中使用的比较普遍,即通过Err对象和ON Error.Go To.Resume等语句来实现.这 ...
- VMware vCenter中, 如何辩认虚机上Raw Device Mapping过了的一块物理磁盘?
比如说, 我们有一套VMware的环境, 其中有一台运行者ESXi的主机, 其上有十块SAS盘. 这十块盘中的五块盘被RDM到一台虚机上了. 假设你发现有添加多了一块盘, 你想移除掉, 但是5块盘其中 ...
- XML中PCDATA与CDATA的区别
XML中PCDATA与CDATA的区别 2011-02-10 19:27:25| 分类: XML | 标签:xml中pcdata与cdata的区别 字号:大中小 订阅 所有 XML 文档中 ...
- 国庆大礼包:2014年最全的ANDROID GUI模板和线框图免费下载
距离上次分享GUI模板有很长时间了,这段时间里设计趋势不断变化,谷歌推出了最新的Android L以及全新的界面设计,UI设计师又有得忙了,今天收集了一组实用的GUI模板和线框图,包含最新的Andro ...
- 使用jQuery在上传图片之前实现缩略图预览
使用jQuery在上传图片之前实现缩略图预览 jQuery代码 01 $("#uploadImage").on("change", function(){ 02 ...
- IOS开发-提升app性能的25条建议和技巧
前言 这篇文章介绍了作者开发工作中总结的25个iOS开发tips, 多年之前读过这篇文章.收益良多,基本每一个tips在我的应用开发过程中都使用过.今天把这篇文章又一次整理转发下,与大家一起学习,不论 ...
- 交叉编译git
git依赖openssl.zlib. 首先编译openssl ./Configure linux-armv4 shared 修改Makefile,CC.RANLIB.MAKEDEPPROG为对应的交叉 ...