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 的 __FILE__ 常量
Jan 15 PHP
PHP中动态显示签名和ip原理
Mar 28 PHP
php 什么是PEAR?
Mar 19 PHP
php源码加密 仿微盾PHP加密专家(PHPCodeLock)
May 06 PHP
在smarty模板中使用PHP函数的方法
Apr 23 PHP
PHP5.3的垃圾回收机制(动态存储分配方案)深入理解
Dec 10 PHP
php中利用explode函数分割字符串到数组
Feb 08 PHP
用PHP代码在网页上生成图片
Jul 01 PHP
PHP获取当前文件的父目录方法汇总
Jul 21 PHP
Laravel框架实现的使用smtp发送邮件功能示例
Mar 12 PHP
PHP设计模式之观察者模式定义与用法分析
Apr 04 PHP
php判断/计算闰年的方法小结【三种方法】
Jul 06 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若干单维数组遍历方法的比较
2011/09/20 PHP
php inc文件使用的风险和注意事项
2013/11/12 PHP
php实现格式化多行文本为Js可用格式
2015/04/15 PHP
thinkphp验证码的实现(form、ajax实现验证)
2016/07/28 PHP
laravel自定义分页效果
2017/07/23 PHP
索趣科技的答案
2007/02/07 Javascript
JavaScript中string对象
2015/06/12 Javascript
在Ubuntu系统上安装Ghost博客平台的教程
2015/06/17 Javascript
再谈JavaScript异步编程
2016/01/27 Javascript
JQuery ztree 异步加载实例讲解
2016/02/25 Javascript
js创建jsonArray传输至后台及后台全面解析
2016/04/11 Javascript
JS与jQuery实现隔行变色的方法
2016/09/09 Javascript
详解Angular2中的编程对象Observable
2016/09/17 Javascript
vue input输入框模糊查询的示例代码
2018/05/22 Javascript
vue中使用echarts制作圆环图的实例代码
2018/07/27 Javascript
如何在基于vue-cli的项目自定义打包环境
2018/11/10 Javascript
Vue从TodoList中学父子组件通信
2019/02/05 Javascript
vue+element实现表格新增、编辑、删除功能
2019/05/28 Javascript
js实现计算器功能
2020/08/10 Javascript
查找Vue中下标的操作(some和findindex)
2020/08/12 Javascript
vue实现验证用户名是否可用
2021/01/20 Vue.js
python检查URL是否正常访问的小技巧
2017/02/25 Python
pandas 快速处理 date_time 日期格式方法
2018/11/12 Python
使用PYTHON解析Wireshark的PCAP文件方法
2019/07/23 Python
基于Django静态资源部署404的解决方法
2019/07/28 Python
Python多线程多进程实例对比解析
2020/03/12 Python
新手学习Python2和Python3中print不同的用法
2020/06/09 Python
Python 解析库json及jsonpath pickle的实现
2020/08/17 Python
Python 串口通信的实现
2020/09/29 Python
Python爬虫新手入门之初学lxml库
2020/12/20 Python
Topman美国官网:英国著名的国际平价时尚男装品牌
2017/12/22 全球购物
MSC邮轮官方网站:加勒比海、地中海和世界各地的假期
2018/08/27 全球购物
大学生个人简历中的自我评价
2013/12/27 职场文书
大专生自我鉴定怎么写
2014/09/16 职场文书
详解flex:1什么意思
2022/07/23 HTML / CSS