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 相关文章推荐
PHP&amp;MYSQL服务器配置说明
Oct 09 PHP
在PHP中PDO解决中文乱码问题的一些补充
Sep 06 PHP
PHP操作数组的一些函数整理介绍
Jul 17 PHP
PHP中的多行字符串传递给JavaScript的两种方法
Jun 19 PHP
对PHP新手的一些建议(PHP学习经验总结)
Aug 20 PHP
PHP+MySQL删除操作实例
Jan 21 PHP
Thinkphp自定义代码生成工具及用法说明(附下载地址)
May 27 PHP
PHP 输出缓冲控制(Output Control)详解
Aug 25 PHP
jquery不支持toggle()高(新)版本的问题解决
Sep 24 PHP
php加密之discuz内容经典加密方式实例详解
Feb 04 PHP
PHP实现的分页类定义与用法示例
Jul 05 PHP
PHP htmlentities()函数用法讲解
Feb 25 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快速url重写 更新版[需php 5.30以上]
2010/04/20 PHP
PHP中函数rand和mt_rand的区别比较
2012/12/26 PHP
使用PHP实现生成HTML静态页面
2015/11/18 PHP
laravel框架邮箱认证实现方法详解
2019/11/22 PHP
javascript常用函数归纳整理
2014/10/31 Javascript
基于jquery实现省市联动效果
2015/11/23 Javascript
js原型链与继承解析(初体验)
2016/05/09 Javascript
JS简单测试循环运行时间的方法
2016/09/04 Javascript
Vue 2.x教程之基础API
2017/03/06 Javascript
Angular.Js中ng-include指令的使用与实现
2017/05/07 Javascript
Vue-cli创建项目从单页面到多页面的方法
2017/09/20 Javascript
jQuery ajax读取本地json文件的实例
2017/10/31 jQuery
JQuery选中select组件被选中的值方法
2018/03/08 jQuery
在vue-cli的组件模板里使用font-awesome的两种方法
2018/09/28 Javascript
ElementUI Tag组件实现多标签生成的方法示例
2019/07/08 Javascript
详解vue之自行实现派发与广播(dispatch与broadcast)
2021/01/19 Vue.js
[46:59]完美世界DOTA2联赛PWL S2 GXR vs Ink 第二场 11.19
2020/11/20 DOTA
用Python给文本创立向量空间模型的教程
2015/04/23 Python
Windows下的Python 3.6.1的下载与安装图文详解(适合32位和64位)
2018/02/21 Python
解决已经安装requests,却依然提示No module named requests问题
2018/05/18 Python
对numpy.append()里的axis的用法详解
2018/06/28 Python
Python DES加密实现原理及实例解析
2020/07/17 Python
python实现mask矩阵示例(根据列表所给元素)
2020/07/30 Python
scrapy-redis分布式爬虫的搭建过程(理论篇)
2020/09/29 Python
安装python依赖包psycopg2来调用postgresql的操作
2021/01/01 Python
世界上最好的威士忌和烈性酒购买网站:The Whisky Exchange
2016/11/20 全球购物
Get The Label中文官网:英国运动时尚购物平台
2017/04/19 全球购物
荷兰时尚精品店:Labels Fashion
2020/03/22 全球购物
全球最大化妆品零售网站:SkinStore
2020/10/24 全球购物
.NET概念性的面试题
2012/02/29 面试题
承认错误的检讨书
2014/01/30 职场文书
物理专业大学生职业生涯规划书
2014/02/07 职场文书
座谈会主持词
2014/03/20 职场文书
社区戒毒工作方案
2014/06/04 职场文书
因公司原因离职的辞职信范文
2015/05/12 职场文书
小学班主任培训心得体会
2016/01/07 职场文书