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获取当前网址url并替换参数或网址的方法
Jun 06 PHP
php懒人函数 自动添加数据
Jun 28 PHP
php中检查文件或目录是否存在的代码小结
Oct 22 PHP
解析posix与perl标准的正则表达式区别
Jun 17 PHP
php的数组与字符串的转换函数整理汇总
Jul 18 PHP
Opcache导致php-fpm崩溃nginx返回502
Mar 02 PHP
在WordPress的后台中添加顶级菜单和子菜单的函数详解
Jan 11 PHP
解决微信授权回调页面域名只能设置一个的问题
Dec 11 PHP
PHP如何获取当前主机、域名、网址、路径、端口等参数
Jun 09 PHP
php类自动装载、链式操作、魔术方法实现代码
Jul 23 PHP
PHP实现时间日期友好显示实现代码
Sep 08 PHP
PHP设计模式之数据访问对象模式(DAO)原理与用法实例分析
Dec 12 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
总集篇&特番节目先行播出!《SAO Alicization War of Underworld》第2季度TV动画4月25日放送!
2020/03/06 日漫
基于php常用正则表达式的整理汇总
2013/06/08 PHP
PHP处理大量表单字段的便捷方法
2015/02/07 PHP
php实现CSV文件导入和导出
2015/10/24 PHP
php中array_slice和array_splice函数解析
2016/10/18 PHP
php中namespace及use用法分析
2016/12/06 PHP
解决在Laravel 中处理OPTIONS请求的问题
2019/10/11 PHP
比较全面的event对像在IE与FF中的区别 推荐
2009/09/21 Javascript
window.ActiveXObject使用说明
2010/11/08 Javascript
javascript 表格内容排序 简单操作示例代码
2014/01/03 Javascript
了解Javascript的模块化开发
2015/03/02 Javascript
JavaScript制作简易的微信打飞机
2015/03/31 Javascript
DataTables+BootStrap组合使用Ajax来获取数据并且动态加载dom的方法(排序,过滤,分页等)
2016/11/09 Javascript
vue如何引入sass全局变量
2018/06/28 Javascript
对angularJs中2种自定义服务的实例讲解
2018/09/30 Javascript
JS实现骰子3D旋转效果
2019/10/24 Javascript
jenkins自动构建发布vue项目的方法步骤
2021/01/04 Vue.js
[05:29]2014DOTA2国际邀请赛 赛后专访:LGDNewbee顺利过关
2014/07/13 DOTA
[50:21]Liquid vs Winstrike 2018国际邀请赛小组赛BO2 第二场
2018/08/19 DOTA
Python入门及进阶笔记 Python 内置函数小结
2014/08/09 Python
解密Python中的描述符(descriptor)
2015/06/03 Python
解读Python编程中的命名空间与作用域
2015/10/16 Python
使用Python对Csv文件操作实例代码
2017/05/12 Python
利用python实现微信头像加红色数字功能
2018/03/26 Python
Python爬虫框架Scrapy常用命令总结
2018/07/26 Python
python处理multipart/form-data的请求方法
2018/12/26 Python
python网络编程之多线程同时接受和发送
2019/09/03 Python
全面解析HTML5中的标准属性与自定义属性
2016/02/18 HTML / CSS
解释一下ruby中的特殊方法与特殊类
2013/02/26 面试题
关于青春的演讲稿
2014/05/05 职场文书
学校募捐倡议书
2014/05/14 职场文书
2014最新开业庆典策划方案(5篇)
2014/09/15 职场文书
2014年最新版离婚协议书范本
2014/11/25 职场文书
护士医德考评自我评价
2015/03/03 职场文书
先进个人主要事迹怎么写
2015/11/04 职场文书
实体类或对象序列化时,忽略为空属性的操作
2021/06/30 Java/Android