Linux下用Xdebug调试php
Linux下用Xdebug调试php 博客分类: php
PHPLinuxZendEclipseC#
为了调试PHP程序,安装一下xdebug. 官方网址: http://www.xdebug.org 首先下载xdebug2.1.0,在官方首页下载源代码,下载回来的文件名是:xdebug-2.1.0.tgz
xdebug的版本需与您的php版本相对应,由于偶的php是5.3.2,所以下载xdebug2.1.0 Xml代码 收藏代码
cd /your/download/path
tar zxvf xdebug-2.1.0.tgz
cd xdebug-2.1.0 运行phpize
Xml代码 收藏代码
phpize 如果没有将phpize加入$PATH,则应该使用全路径 这里不需要--prefix,编译好之后直接把modules里的xdebug.so文件复制走即可。
Xml代码 收藏代码
./configure --enable-xdebug
--with-php-config=/usr/local/php/bin/php-config Xml代码 收藏代码
make 把xdebug.so复制到了php安装目录,装php的时候指定了安装目录,所以复制到/usr/local/php/xdebug里。随便你复制到哪都行,只要你清楚知道。。。需要改下面一条命令的路径为你自己的。
Xml代码 收藏代码
cp modules/xdebug.so /usr/local/php/xdebug 把下面这行添加到php.ini文件的最后。如果您定义过php.ini的存放位置,一定要找到位置哦,建议弄个phpinfo(),查看到php.ini文件的具体位置。我的位置是在:/usr/local/etc/php.ini 添加下面内容:
Xml代码 收藏代码
[Xdebug]
zend_extension ="/usr/local/php5/xdebug/xdebug.so"
xdebug.profiler_enable=on
xdebug.trace_output_dir="/usr/local/php5/xdebug/"
xdebug.profiler_output_dir="/usr/local/php5/xdebug/"
xdebug.remote_enable=on
xdebug.remote_handler=dbgp
;xdebug.remote_host=localhost
xdebug.remote_port=9999 注意,如果您安装过zend optimizer 那么,注意您的php.ini文件中是否已存在zend_extension= ,如果已经存在,请注释掉,在zend_extension=前加上; ,示例:
;zend_extension="/usr/local/lib/php/20060613/ZendExtensionManager.so"
这样,才可以正常安装运行好xdebug. 重启你的web服务器。
接下来打开phpinfo(),看看里面是否有xdebug的信息了。
This program makes use of the Zend Scripting Language Engine:
Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies
with Xdebug v2.0.2, Copyright (c) 2002-2007, by Derick Rethans 可能遇到的问题
1.Cannot find autoconf
/usr/local/php/bin/phpize
提示
Xml代码 收藏代码
Configuring for:
PHP Api Version: 20041225
Zend Module Api No: 20060613
Zend Extension Api No: 220060519
Cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF
environment variable is set correctly and then rerun this script. 源代码目录下也没有生成configure
需安装两个软件包
Xml代码 收藏代码
imake-1.0.2-3.i386.rpm
autoconf-2.59-12.noarch.rpm 2.configure: error: Cannot find php-config
Xml代码 收藏代码
./configure --with-php-config=/usr/local/php/bin/php-config # 这里如果直接执行./configure很有可能会报错
# "configure: error: Cannot find php-config. Please use --with-php-config=PATH",
# 你的配置文件位置可能不在这个目录,这个文件通常是在php安装目录的bin目录下的一个文件名叫做php-config或者php-config5的文件,实在找不到就find一下咯
Linux下用Xdebug调试php的更多相关文章
- linux下多进程的调试
linux下多进程的调试: (1)follow-fork-mode set follow-fork-mode [parent | child] ---- fork之后选择调试父进 ...
- Linux下的反调试技术
Linux下的反调试技术 2014年01月30日 ⁄ 综合 ⁄ 共 2669字 ⁄ 字号 小 中 大 ⁄ 评论关闭 转自 http://wangcong.org/blog/archives/310 ...
- Ubuntu\Linux 下编写及调试C\C++
一.在Ubuntu\Linux 下编写及调试C\C++需要配置基本的环境,即配置gcc编译器.安装vim编译器,具体配置安装步骤我在这里就不多说了. 二.基本环境配置完了我们就可以进入自己的程序编写了 ...
- linux下core文件调试方法
http://www.cnblogs.com/li-hao/archive/2011/09/25/2190278.html 在程序不寻常退出时,内核会在当前工作目录下生成一个core文件(是一个内存映 ...
- linux下core文件调试方法(转载)
转自于:http://blog.csdn.net/fcryuuhou/article/details/8507775 在程序遇到段错误不寻常退出时,一般是访问内存出错.但是不会给出程序哪里出现的问题, ...
- linux下thinkphp取消调试模式后找不到网页解决方案
1.最大嫌疑是Runtime目录权限不足,导致common~runtime.php文件无法生成, 解决:1.整个Runtime目录删除,让系统重新生成; 2.给Runtime及以下的所有文件足够权限0 ...
- [转载] Linux 下产生和调试core文件
原地址:http://blog.csdn.net/shaovey/article/details/2744487 linux下如何产生core,调试core 在程序不寻常退出时,内核会在当前工作目录下 ...
- Linux下性能测量和调试诊断工具Systemtap
一.简介 SystemTap是一个诊断Linux系统性能或功能问题的开源软件.它使得对运行时的Linux系统进行诊断调式变得更容易.更简单.有了它,开发者或调试人员不再需要重编译.安装新内核.重启动等 ...
- linux下的程序调试方法汇总
搞电子都知道,电路不是焊接出来的,是调试出来的.程序员也一定认同,程序不是写出来的,是调试出来的.那么调试工具就显得尤为重要,linux作为笔者重要的开发平台,在linux中讨论调试工具主要是为那些入 ...
随机推荐
- <a>标签的href 与 onclick 使用
链接的onclick 事件被先执行,其次是href属性下的动作(页面跳转,或 javascript 伪链接): 假设链接中同时存在href 与onclick,如果想让href 属性下的动作不执行,on ...
- Python旅途——文件操作
Python--文件操作 1.理解文件操作 可能有的时候有人会在想为什么要对文件进行操作,无论对于文件还是网络之间的交互,我们都是建立在数据之上的,如果我们没有数据,那么很多的事情也就不能够成立,比如 ...
- java多线程之ForkJoinPool
转https://www.cnblogs.com/lixuwu/p/7979480.html 阅读目录 使用 背景:ForkJoinPool的优势在于,可以充分利用多cpu,多核cpu的优势,把一个任 ...
- 数据结构实验6:C++实现二叉树类
实验6 学号: 姓名: 专业: 6.1 实验目的 掌握二叉树的动态链表存储结构及表示. 掌握二叉树的三种遍历算法(递归和非递归两类). 运用二叉树三种遍历的方法求解有关问题. 6 ...
- C++实现链队类——合肥工业大学数据结构实验5:链式队列
实验5 5.1 实验目的 熟练掌握队列的顺序链式存储结构. 熟练掌握队列的有关算法设计,并在链队列上实现. 根据具体给定的需求,合理设计并实现相关结构和算法. 5.2 实验要求 5.2.1链队列实验要 ...
- zoj 1383 Binary Numbers
Binary Numbers Time Limit: 2 Seconds Memory Limit: 65536 KB Given a positive integer n, print o ...
- MyBatis使用Mapper动态代理开发Dao层
开发规范 Mapper接口开发方法只需要程序员编写Mapper接口(相当于Dao接口),由Mybatis框架根据接口定义创建接口的动态代理对象,代理对象的方法体同原始Dao接口实现类方法. Mappe ...
- 背包!背包!HDU 2602 Bone Collector + HDU 1114 Piggy-Bank + HDU 2191 512
http://acm.hdu.edu.cn/showproblem.php?pid=2602 第一题 01背包问题 http://acm.hdu.edu.cn/showproblem.php?pid= ...
- free delete malloc new(——高品质量程序设计指南第16章)
free和delete只是把指针所指向的内存给释放掉了,但是指针本身并没有被删掉. 所以在释放掉内存后一定要记得将指针指向NULL ,动态内存分配不会自动的释放,一定要记得free掉
- 压力测试webbench(转)
最近app需要搭建后台,故此研究一下,靠谱的后台服务器..网传nginx 能达到的并发数量比apache 高. LAMP or LNMP ? 根据需求测试结果来进行选择. 首先是安装LNMP测试完后 ...