php 服务器调试 Zend Debugger 的安装教程


Posted in PHP onSeptember 25, 2009

事实上,Zend Studio(后面我简称“ZDE”了)的调试功能分为内部调试和远程调试。内部调试是用ZDE内置的PHP(有4、5两个版本)进行的代码初步调试,我们把重点放在远程调试上,因为它可以完全模拟一个真实的运行环境。

远程调试需要服务器端的组件支持,我们今天的内容就是怎么来安装这个服务器端调试环境,用到的调试组件是Zend Debugger,它是轻便而且够用的,在撰写本文时,其最新版本是5.2.14,与网络上广为流传的5.2.10版略有更新。我的服务器是windows下的apache,因此我就下载了windows版的Zend Debugger,下来的压缩包大约2.1M,有个readme.txt,我觉得有必要看哈子:

Zend Debugger installation instructions
—————————————
1. Locate ZendDebugger.so or ZendDebugger.dll file that is compiled for the correct version of PHP (4.3.x, 4.4.x, 5.0.x, 5.1.x, 5.2.x) in the  appropriate directory.
2. Add the following line to the php.ini file:
  Linux and Mac OS X: zend_extension=/full/path/to/ZendDebugger.so
  Windows: zend_extension_ts=/full/path/to/ZendDebugger.dll
  Windows non-tread safe: zend_extension=/full/path/to/ZendDebugger.dll

  (*) the windows non-thread safe is used only with Zend Core 2.0

  3. Add the following lines to the php.ini file:
  zend_debugger.allow_hosts=<ip_addresses>
  zend_debugger.expose_remotely=always

4. Place dummy.php file in the document root directory.
5. Restart web server.

这里已经非常详细的讲了安装方法了,那我就以我晦涩的语言再描述一遍吧
以下是压缩包内所有文件的列表:
ZendDebugger-5.2.14RC9-cygwin_nt-i386\md5
ZendDebugger-5.2.14RC9-cygwin_nt-i386\Inventory.xml
ZendDebugger-5.2.14RC9-cygwin_nt-i386\4_3_x_comp
ZendDebugger-5.2.14RC9-cygwin_nt-i386\4_3_x_comp\ZendDebugger.dll
ZendDebugger-5.2.14RC9-cygwin_nt-i386\4_4_x_comp
ZendDebugger-5.2.14RC9-cygwin_nt-i386\4_4_x_comp\ZendDebugger.dll
ZendDebugger-5.2.14RC9-cygwin_nt-i386\5_0_x_comp
ZendDebugger-5.2.14RC9-cygwin_nt-i386\5_0_x_comp\ZendDebugger.dll
ZendDebugger-5.2.14RC9-cygwin_nt-i386\5_1_x_comp
ZendDebugger-5.2.14RC9-cygwin_nt-i386\5_1_x_comp\ZendDebugger.dll
ZendDebugger-5.2.14RC9-cygwin_nt-i386\5_2_x_comp
ZendDebugger-5.2.14RC9-cygwin_nt-i386\5_2_x_comp\ZendDebugger.dll
ZendDebugger-5.2.14RC9-cygwin_nt-i386\5_2_x_nts_comp
ZendDebugger-5.2.14RC9-cygwin_nt-i386\5_2_x_nts_comp\ZendDebugger.dll
ZendDebugger-5.2.14RC9-cygwin_nt-i386\dummy.php
ZendDebugger-5.2.14RC9-cygwin_nt-i386\README.txt

解压出合适的也就是和你当前php的版本对应的Zend Debugger版本,我的php版本是5.2.5,因此我就把5_2_x_comp给拖出来了(至于5_2_x_nts_comp指的是non-tread safe,没有明白具体用途,也就不妄用了),我将5_2_x_comp\ZendDebugger.dll移动到D:\myserver\ZendDebugger\5_2_x\ZendDebugger.dll,将压缩包中的dummy.php解压到web根目录,我这里的apache的DocumentRoot设置在D:/myserver,就拷贝dummy.php到D:\myserver\wwwroot,然后修改php.ini,加入了这些内容:

zend_extension_ts=D:/myserver/ZendDebugger/5_2_x/ZendDebugger.dll
  zend_debugger.allow_hosts=127.0.0.1/32,192.168.1.88/24
zend_debugger.expose_remotely=always

然后重启apache,在略微的等待之后,我们输入phpinfo()查看成功与否?
php 服务器调试 Zend Debugger 的安装教程

啊哈,运行的很好的嘛~ 

下面打开ZDE,工具菜单->首选项,选择调试选项卡,设置调试方式为服务器,Debug Server URL填写web服务器的URL,我这里apache的端口是8080,如果是默认80端口,就可以省略了,OK,设置完成,确定之(如图) 

php 服务器调试 Zend Debugger 的安装教程
 

选择 工具->检查Debug Server连接,出来的对话框选择是,我们看到了连接成功的提示 

php 服务器调试 Zend Debugger 的安装教程 
至此,我们的Debug Server就算成功安装完成了,关于如何使用Zend Studio的服务器调试,后面的教程会详细阐述,敬请期待哦。

PHP 相关文章推荐
swfupload 多文件上传实现代码
Aug 27 PHP
用PHP编写和读取XML的几种方式
Jan 12 PHP
ubuntu下编译安装xcache for php5.3 的具体操作步骤
Jun 18 PHP
php遍历文件夹和文件列表示例分享
Mar 11 PHP
php获取文章上一页与下一页的方法
Dec 01 PHP
PHP模拟登陆163邮箱发邮件及获取通讯录列表的方法
Mar 07 PHP
php简单实现快速排序的方法
Apr 04 PHP
PHP自带方法验证邮箱是否存在
Feb 01 PHP
Zend Framework基本页面布局分析
Mar 19 PHP
php单元测试phpunit入门实例教程
Nov 17 PHP
PHP设计模式之装饰器模式定义与用法简单示例
Aug 13 PHP
PhpStorm+xdebug+postman调试技巧分享
Sep 15 PHP
php 代码优化的42条建议 推荐
Sep 25 #PHP
PHP下通过系统信号量加锁方式获取递增序列ID
Sep 25 #PHP
PHP 日常开发小技巧
Sep 23 #PHP
php程序之die调试法 快速解决错误
Sep 17 #PHP
火车采集器 免费版使出收费版本功能实现原理
Sep 17 #PHP
使用php来实现网络服务
Sep 15 #PHP
Discuz 6.0+ 批量注册用户名
Sep 13 #PHP
You might like
php在字符串中查找另一个字符串
2008/11/19 PHP
PHP使用mysql_fetch_row查询获得数据行列表的方法
2015/03/18 PHP
PHP结合jQuery实现找回密码
2015/07/22 PHP
全面解读PHP的人气开发框架Laravel
2015/10/15 PHP
php检查页面是否被百度收录
2015/10/28 PHP
PHP仿微信多图片预览上传实例代码
2016/09/13 PHP
向fckeditor编辑器插入指定代码的方法
2007/05/25 Javascript
javascript 动态添加事件代码
2008/11/30 Javascript
javascript Ext JS 状态默认存储时间
2009/02/15 Javascript
js获取元素到文档区域document的(横向、纵向)坐标的两种方法
2013/05/17 Javascript
JS根据年月获得当月天数的实现代码
2014/07/03 Javascript
jQuery ajax调用WCF服务实例
2014/07/16 Javascript
angularJS提交表单(form)
2015/02/09 Javascript
浅谈JavaScript 浏览器对象
2016/06/03 Javascript
用jquery获取自定义的标签属性的值简单实例
2016/09/17 Javascript
Angular2  NgModule 模块详解
2016/10/19 Javascript
原生node.js案例--前后台交互
2017/02/20 Javascript
原生JS实现左右箭头选择日期实例代码
2017/03/14 Javascript
angular.js + require.js构建模块化单页面应用的方法步骤
2017/07/19 Javascript
vue自定义指令用法经典实例小结
2019/03/16 Javascript
javascript二维数组和对象的深拷贝与浅拷贝实例分析
2019/10/26 Javascript
搭建Python的Django框架环境并建立和运行第一个App的教程
2016/07/02 Python
Python计时相关操作详解【time,datetime】
2017/05/26 Python
Python简单生成随机姓名的方法示例
2017/12/27 Python
Python实现从log日志中提取ip的方法【正则提取】
2018/03/31 Python
python 实现返回一个列表中出现次数最多的元素方法
2019/06/11 Python
python判断是空的实例分享
2020/07/06 Python
python -v 报错问题的解决方法
2020/09/15 Python
将时尚融入珠宝:Adornmonde
2019/10/17 全球购物
简单说下OSPF的操作过程
2014/08/13 面试题
如何开发安全的AJAX应用
2014/03/26 面试题
建筑设计所实习生自我鉴定
2013/09/25 职场文书
房地产开发计划书
2014/01/10 职场文书
蜜蜂引路教学反思
2014/02/04 职场文书
财务审计整改报告
2014/11/06 职场文书
2016年9月份红领巾广播稿
2015/12/21 职场文书