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 相关文章推荐
NT IIS下用ODBC连接数据库
Oct 09 PHP
介绍php设计模式中的工厂模式
Jun 12 PHP
PHP 危险函数解释 分析
Apr 22 PHP
PHP 危险函数全解析
Sep 09 PHP
php连接mssql的一些相关经验及注意事项
Feb 05 PHP
php中创建和调用webservice接口示例
Jul 25 PHP
php设计模式之单例模式实例分析
Feb 25 PHP
php通过curl模拟登陆DZ论坛
May 11 PHP
利用php实现一周之内自动登录存储机制(cookie、session、localStorage)
Oct 31 PHP
PHP递归统计系统中代码行数
Sep 19 PHP
laravel5.6中的外键约束示例
Oct 23 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中$_SERVER的详细参数与说明介绍
2013/10/26 PHP
Jquery升级新版本后选择器的语法问题
2010/06/02 Javascript
js 遍历对象的属性的代码
2011/12/29 Javascript
dotopAlert 提示用户需安装播放器的代码
2012/09/17 Javascript
JavaScript显示当然日期和时间即年月日星期和时间
2013/10/29 Javascript
12种不宜使用的Javascript语法整理
2013/11/04 Javascript
采用自执行的匿名函数解决for循环使用闭包的问题
2014/09/11 Javascript
js中this用法实例详解
2015/05/05 Javascript
jquery datatable服务端分页
2016/08/31 Javascript
js实现简单的选项卡效果
2017/02/23 Javascript
ie下js不执行的几种可能
2017/02/28 Javascript
微信小程序搜索组件wxSearch实例详解
2017/06/08 Javascript
VUE2实现事件驱动弹窗示例
2017/10/21 Javascript
如何正确理解vue中的key详解
2019/11/02 Javascript
JavaScript中变量提升机制示例详解
2019/12/27 Javascript
ES6使用新特性Proxy实现的数据绑定功能实例
2020/05/11 Javascript
微信小程序通过websocket实时语音识别的实现代码
2020/08/19 Javascript
在python中的socket模块使用代理实例
2014/05/29 Python
python利用beautifulSoup实现爬虫
2014/09/29 Python
Python 探针的实现原理
2016/04/23 Python
python 拷贝特定后缀名文件,并保留原始目录结构的实例
2018/04/27 Python
对python 合并 累加两个dict的实例详解
2019/01/21 Python
numpy中的ndarray方法和属性详解
2019/05/27 Python
python opencv鼠标事件实现画框圈定目标获取坐标信息
2020/04/18 Python
python连接PostgreSQL数据库的过程详解
2019/09/18 Python
Django和Flask框架优缺点对比
2019/10/24 Python
Python使用Socket实现简单聊天程序
2020/02/28 Python
解决Keras的自定义lambda层去reshape张量时model保存出错问题
2020/07/01 Python
python线性插值解析
2020/07/05 Python
css3加js做一个简单的3D行星运转效果实例代码
2017/01/18 HTML / CSS
Servlet面试题库
2015/07/18 面试题
电大毕业个人生自我鉴定
2014/03/26 职场文书
大学生党员自我剖析材料
2014/10/06 职场文书
写给妈妈的感谢信
2015/01/22 职场文书
Python爬虫基础讲解之请求
2021/05/13 Python
详解CSS中postion和opacity及cursor的特性
2022/08/14 HTML / CSS