zend studio13 xdebug 怎么配置本地apache服务器使用xdebug调试php脚本

mrc_elite 的BLOG
用户名:mrc_elite
文章数:48
访问量:58584
注册日期:
阅读量:5863
阅读量:12276
阅读量:382879
阅读量:1074498
[匿名]淘宝API:
51CTO推荐博文
(一)安装php扩展xdebug:wget&https://xdebug.org/files/xdebug-2.4.0.tgz
tar&zxvf&xdebug-2.4.0.tgz
cd&xdebug-2.4.0
/usr/local/php/bin/phpize
./configure&--enable-xdebug&&--with-php-config=/usr/local/php/bin/php-config
make&install(二)配置xdebug,让 cgi 和 cli 使用不同的配置文件:http 请求用 php.ini,命令行脚本 用 php-cli.ini:sudo&cp&/usr/local/php/etc/php.ini&/usr/local/php/etc/php-cli.ini对http请求 仅用cookie触发debug:设置xdebug,仅被动触发debug(仅对带cookie:XDEBUG_SESSION=你的idekey 的请求 触发debug):编辑 php.ini,添加或修改以下项:zend_extension&=&"/usr/local/php/modules/xdebug.so"
xdebug.default_enable=On
xdebug.collect_params=On
xdebug.collect_vars=On
xdebug.collect_return=On
xdebug.show_local_vars=1
xdebug.remote_handler=dbgp
xdebug.remote_enable=1
xdebug.remote_host=192.168.1.69&#安装PhpStorm的机器ip
;xdebug.remote_connect_back=1&&&&&&&&&&&&&&&&&&&&#&如果启用并且这里写&1,则启动调试时会自动&&连接请求来源ip。这项配置会覆盖&remote_host&设置的ip。不建议开启这个(万一有启动了360安全卫士==的机器访问你的虚拟机。。360安全卫士==防火墙软件开启网络防护后,外来的tcp连接&会被长时间挂起,造成php-fpm&worker进程假死)。
xdebug.remote_port=9000&&&&&&&&&&&&&&&&&&&&&&&&&#&与phpstorm设置保持一致
xdebug.remote_autostart=Off
xdebug.remote_log=/dev/null
xdebug.auto_trace=Off
xdebug.show_exception_trace=0改完重启php-fpm。命令行执行脚本时自动触发debug:命令行执行脚本时,如果phpstorm启动了debug,则触发debug:编辑 php-cli.ini,添加或修改以下项:zend_extension&=&"/usr/local/php/modules/xdebug.so"
xdebug.default_enable=On
xdebug.collect_params=On
xdebug.collect_vars=On
xdebug.collect_return=On
xdebug.show_local_vars=1
xdebug.remote_handler=dbgp
xdebug.remote_enable=1
xdebug.remote_host=192.168.1.69&&&&&&&&&&&&&&&&&&&#&安装phpstorm的机器的ip
xdebug.remote_port=9000&&&&&&&&&&&&&&&&&&&&&&&&&&#&与phpstorm设置保持一致
xdebug.remote_autostart=On
xdebug.idekey=你的idekey-cli&&&&&&&&&&&&&&&&&&&&&&#&最好自己独有,不跟别人重复
xdebug.remote_log=/dev/null
xdebug.auto_trace=Off
xdebug.show_exception_trace=01)设置PHP、xdebug调试端口等&2) 添加server:&3) 添加调试配置:4) 启动debug、加断点并且调试&启动 &php-cli.ini &配置可以调试 &在开发虚拟机上执行命令行php脚本。6) 修改这个链接后 &从浏览器打开:http://192.168.100.你的虚拟机IP/setcookie.php?idekey=你的idekey这个请求会给浏览器添加cookie:XDEBUG_SESSION=你的idekey,domain=虚拟机完整IP(不带端口),并设置成长时间不过期。此后对虚拟机的访问就会触发调试。(三)防调试超时:修改以下3处配置,防止调试过程中过早断开与phpstorm的连接:#&php*.ini&(/usr/local/php/etc/php*.ini):
max_execution_time=7200
#&php-fpm.conf&(/usr/local/php/etc/php-fpm.conf):
request_terminate_timeout&=&0&&#&fpm不加执行时间限制,少管闲事。
#&nginx&(/usr/local/nginx/conf/nginx.conf)在http端添加或修改这两个:
fastcgi_connect_timeout&7200s;&&&#&因为php-fpm可能会被调试阻塞
fastcgi_read_timeout&7200s;(四)其它配置建议:本文出自 “” 博客,请务必保留此出处
了这篇文章
类别:┆阅读(0)┆评论(0)XDebug的简单介绍
服务器君一共花费了110.841 ms进行了3次数据库查询,努力地为您提供了这个页面。
试试阅读模式?希望听取您的建议
很多PHP程序员调试使用echo、print_r()、var_dump()、printf()等,虽然对于有较丰富开发经验的程序员来说这些也已经足够了,他们往往可以在程序执行的过程中,通过输出特定变量的值可以判断程序执行是否正确,甚至效率高低也可以看出来(当然可能还需要使用一些时间函数)。那么我们为什么还需要一个专门的调试程序来监控我们的程序运行呢?
在我们平时的php开发中,一个大的项目经过长时间的积累以后你会发现性能越来越慢,而性能到底消耗在了什么地方,常常是一个令人头疼的问题,function a()调用了多少次,function b()又消耗了多少时间,我们到底怎么查找是哪个蛀虫拉慢了我们的程序运行速度呢?在这里给大家介绍一款工具xdebug,相信很多人已经听说过了,希望借助这个工具我们可以起到简单分析php程序性能瓶颈的问题。
XDebug是什么
XDebug是一个开放源代码的PHP程序器(即一个Debug工具),可以用来跟踪,调试和分析PHP程序的运行状况。
安装XDebug
,下载php_xdebug.dll,根据版本号与自己的操作系统、PHP版本下载合适的。
将下载的php_xdebug.dll放到PHP的安装目录php\ext下。
编辑php.ini,有些集合环境已自带xdebug的配置,如果没有则自己手动加入下面几行:
zend_extension = "/home/ad/php/lib/php/extensions/no-debug-non-zts-/xdebug.so"
xdebug.auto_trace = on
xdebug.auto_profile = on
xdebug.collect_params = on
xdebug.collect_return = on
xdebug.profiler_enable = on
xdebug.trace_output_dir = "/home/ad/xdebug_log"
xdebug.profiler_output_dir = "/home/ad/xdebug_log"
XDebug参数简介:
zend_extension 加载xdebug扩展
xdebug.auto_trace 自动打开打开函数调用监测
xdebug.auto_profile 自动打开性能监测
xdebug.trace_output_dir 设定函数调用监测信息的输出文件的路径。
xdebug.profiler_output_dir 设定效能监测信息输出文件的路径。
xdebug.collect_params 打开收集“函数参数”的功能。将函数调用的参数值列入函数过程调用的监测信息中。
xdebug.collect_return 打开收集“函数返回值”的功能。将函数的返回值列入函数过程调用的监测信息中。
重启Apache。
写一个test.php,内容为&?php phpinfo(); ?>,如果输出的内容中有看到xdebug,说明安装配置成功。或者去/home/ad/xdebug_log下看看是不是日志已经出来了。
CategorySettingDescription
xdebug.trace_output_dir
日志追踪输出目录xdebug.trace_output_name日志文件名,xdebug提供了一系列的标识符,生成相应格式的文件名,具体请参考官网xdebug.trace_options记录添加到文件中方式:1 = 追加(如果存在该文件). 0 (default) = 覆盖(如果存在该文件)显示数据非零值 = 控制function的参数显示选项0 = 不显示.
1 = 参数类型,值
(例如:array(9)).
2 = 同上1,只是在CLI模式下略微有区别
3 = 所有变量内容
4 = 所有变量内容和变量名(例如:array(0 => 9)).
1 = 显示function返回值. Default 0 不显示xdebug.collect_vars1 = 显示当前作用域使用了哪些变量,显示变量名,该选项不会记录变量的值,如果需要,使用xdebug.collect_params1 = 添加一行显示变量赋值(若为1,形如$a = 1;这类Assignment Expression会在trace文件里显示)格式0 = 人可读. 从左至右每列分别表示:时间点, 内存, 内存差 (需要设置xdebug.show_mem_delta=1), 等级, 函数名,函数参数 (需要设置,xdebug.collect_params=1,只要是非零), 当前代码行所在文件名 , 行号.
1 = 机器可读[1]. 需要借助第三方app,例如: 或者
2 = html格式 即table,用browser打开,显示table
1 = 显示每次函数调用内存消耗(内存差)行为 1 = 打开自动追踪. (追踪方式有2种,一种是自动追踪,所有php脚本运行时,都会产生trace文件;另一种是触发方式追踪,如下)xdebug.trace_enable_trigger[2]1 = 使用 XDEBUG_TRACE GET/POST 触发追踪, 或者通过设置cookie XDEBUG_TRACE. 为了避免每次请求时,都会生成相应trace追踪文件,你需要把auto_trace设置为0
注:该特性只在2.2+版本才能设置
限制xdebug.var_display_max_depth数组和对象元素显示深度:主要用在数组嵌套,对象属性嵌套时,显示几级的元素内容. Default 3.xdebug.var_display_max_data变量值为字符串时显示多长. Default 512.xdebug.var_display_max_children数组和对象元素显示的个数. Default 128
一些自定义函数
FunctionDescription void xdebug_enable()手动打开,相当于xdebug.default_enable=on void var_dump()覆写php提供的var_dump,出错时,显示函数堆栈信息,(前提:php.ini里html_errors为1),使用xdebug.overload_var_dump 设置是否覆写 void xdebug_start_trace( string trace_file_path [, integer options] )手动控制需要追踪的代码段trace_file_path :文件路径(相对或绝对,若为空).如果为空,或者不传参, 使用xdebug.trace_output_dir设置的目录options :XDEBUG_TRACE_APPEND: 1 = 追加文件内容末尾, 0 = 覆写该文件
XDEBUG_TRACE_COMPUTERIZED:2 =同 xdebug.trace_format=1 .
XDEBUG_TRACE_HTML: 4 = 输出HTML表格,浏览器打开为一table
void xdebug_stop_trace()停止追踪,代码追踪在该行停止 string xdebug_get_tracefile_name()获得输出文件名,与 xdebug.auto_trace配合使用. void xdebug_var_dump([mixed var[,...]]) 输出变量详细信息,相当于php里的var_dump,具体显示请看
默认为0,不显示;非零时,在php执行出错时,显示出错代码所在作用域所有本地变量(注:这会产生大量信息,因此默认是closed),具体显示差别如下图[3] array xdebug_get_declared_vars()显示当前作用域中已声明的变量 array xdebug_get_code_coverage()显示某一段代码内,代码执行到哪些行[4]
关于xdebug.trace_format=1,如果你使用触发方式启用代码追踪:(xdebug.auto_trace = 0;xdebug.trace_enable_trigger = 1),那么,你可以在URL里添加XDEBUG_TRACE,例如:localhost/test.php?XDEBUG_TRACE,或者localhost//test.php?XDEBUG_TRACE=1(任意值)。
是不是觉得很麻烦,那么装个插件,让它来帮你。Chrome XDEBUG Helper,使用它,你可以切换3种状态,disabled ,debugging enabled,profiling enabled(下篇详细介绍),然后切换到debugging enabled。运行该脚本,(去掉URL里的?XDEBUG_TRACE),就可以代码跟踪了。
使用xdebug_start_trace()和xdebug_stop_trace()可以手动追踪你的代码执行情况。
xdebug_start_trace();
//your code required to trace
xdebug_stop_trace();
设定 xdebug.auto_trace = 1 将在执行所有 PHP 脚本之前先启用自动跟踪。另外,您可以通过代码设定 xdebug.auto_trace = 0,并分别使用 xdebug_start_trace() 和 xdebug_stop_trace() 函数启用和禁用跟踪。但是,如果 xdebug.auto_trace 为 1,则可以在包括配置好的 auto_prepend_file 之前先启动跟踪。
选项 xdebug.trace_ouput_dir 和 xdebug.trace_output_name 用于控制保存跟踪输出的位置。在这里,所有文件都被保存到 /tmp/traces 中,并且每个跟踪文件都以 trace 为开头,后接 PHP 脚本的名称(%s)以及进程 ID(%p)。所有 Xdebug 跟踪文件都以 .xt 后缀结尾。
默认情况下, 将显示时间、内存使用量、函数名和函数调用深度字段。如果将 xdebug.trace_format 设为 0,则输出将符合人类阅读习惯(将参数设为 1 则为机器可读格式)。此外,如果指定 xdebug.show_mem_delta = 1,则可以查看内存使用量是在增加还是在减少,而如果指定 xdebug.collect_params = 4,则可以查看传入参数的类型和值。要监视每个函数返回的值,请设定 xdebug.collect_return = 1。
本文地址:,欢迎访问原出处。
不打个分吗?
转载随意,但请带上本文地址:
如果你认为这篇文章值得更多人阅读,欢迎使用下面的分享功能。
小提示:您可以按快捷键 Ctrl + D,或点此 。
大家都在看
阅读一百本计算机著作吧,少年
布莱恩特(Randal E.Bryant) (作者), 奥哈拉伦(David R.O'Hallaron) (作者), 龚奕利 (译者), 雷迎春 (译者)
《深入理解计算机系统》从程序员的视角详细阐述计算机系统的本质概念,并展示这些概念如何实实在在地影响应用程序的正确性、性能和实用性。全书共12章,主要内容包括信息的表示和处理、程序的机器级表示、处理器体系结构、优化程序性能、存储器层次结构、链接、异常控制流、虚拟存储器、系统级I/O、网络编程、并发编程等。书中提供子大量的例子和练习题,并给出部分答案,有助于读者加深对正文所述概念和知识的理解。
扫一扫,在手机上阅读
栏目最新博文
4,195 views
40,897 views
16,764 views
29,897 views
30,830 views
22,981 views
51,250 views
48,578 views
23,285 views
55,316 views
栏目博文推荐
18,057 views
22,834 views
12,691 views
7,219 views
10,357 views
12,881 views
7,153 views
3,875 views
8,434 views
11,904 views
治疗拖延症最好的方法就是立刻开始。
关于网站与作者
互联网信息太多太杂,各互联网公司不断推送娱乐花边新闻,SNS,微博不断转移我们的注意力。但是,我们的时间和精力却是有限的。这里是互联网浩瀚的海洋中的一座宁静与美丽的小岛,供开发者歇息与静心潜心修炼(愿景)。
“Veda”的本义是知识、启示,希望这里能为开发者提供充足的技术资料。
我的电子邮件gonnsai(,腾讯微博:,欢迎与我联系。本地环境&XAMPP+phpStorm+XDebug+chrome&配置和断点调试
本地环境&XAMPP+phpStorm+XDebug+chrome配置和断点调试
不明白phpStorm+XAMPP+chrome组合的phpStorm配置XDebug的断点调试,很多种网页办法都看过了,可用,但没达预期。QQ群问,一个大牛很奇怪我都配置了怎么还不正确,很干脆地说远程协助。哈爽快人说爽快话给办利落的事,我还没说感谢呢大牛就直接说有事88。
今天me总算明白了,其实很容易理解的,休闲的时间把配置过程写了,顺便mark下,需要的人来看看。其实今天《爱你,万缕千丝》正在放映,我追看的,今天恰逢之元、天丘因家族利益出现大吵,所谓一部戏铺垫完、到了矛盾激化到极点、将要迎接剧终的时候,我写这个配置过程忘了看了竟然给,找空补上。希望这个配置过程你读起来像是一本故事,或者是拍拍砖:
我的安装环境:XAMPP版本号V3.1.0
;phpStorm版本8.0.3;windowsxp 32bit。您老人家先过目一下,不然怕影响意义。
XAMPP、phpStorm
都直接安装在了D盘根目录,9999m目录建在D:\xampp\htocts下,即目录工程文件夹路径为D:\xampp\htocts\9999m。在phpStorm&File&open,找到9999m,点击确定,加载9999m到了phpStorm(安装环境路径根据需要自行更改,后面的配置内容也类似)。图1
<img src="/blog7style/images/common/sg_trans.gif" real_src ="/bmiddle/001RAPYRzy6SlFgskVS94&690" V:SHAPES="图片_x0020_34" TITLE=""
ALT="本地环境&XAMPP+phpStorm+XDebug+chrome&配置和断点调试" />
开始服务器端配置:安装好XAMPP,停止apache服务(注意,如果直接退出XAMPP,是不会停止apache的)。
在安装目录下找到php.ini,类似于D:\xampp\php\php.ini,并打开。
找到被注释掉的项目(去掉前面的?)并按如下设置:
zend_extension =
"D:\xampp\php\ext\php_xdebug.dll"
xdebug.profiler_append = 0
xdebug.profiler_enable = 1
xdebug.profiler_enable_trigger = 0
xdebug.profiler_output_dir = "D:\xampp\tmp"
xdebug.profiler_output_name =
"cachegrind.out.%t-%s"
xdebug.remote_enable = on
xdebug.remote_handler = "dbgp"
xdebug.remote_host = "127.0.0.1"
xdebug.trace_output_dir = "D:\xampp\tmp"
xdebug.idekey= PHPSTROM
最初的设置是这样的:图2
<img src="/blog7style/images/common/sg_trans.gif" real_src ="/bmiddle/001RAPYRzy6SlFhPV" V:SHAPES="图片_x0020_7" TITLE=""
ALT="本地环境&XAMPP+phpStorm+XDebug+chrome&配置和断点调试" />
;的意思是被注释掉了,所以要先去掉;号;
然后开启xdebug.remote_enable = on;
还要增加xdebug.idekey= PHPSTROM。
其中remote_host
是指调试客户端的地址,即IDE所在的IP,同理remote_port
是客户端的端口,这两项在远程调试的情况下注意修改,远程的时候最终改为:
zend_extension = "D:\xampp\php\ext\php_xdebug.dll"
xdebug.profiler_append = 0
xdebug.profiler_enable = 1
xdebug.profiler_enable_trigger = 0
xdebug.profiler_output_dir = "D:\xampp\tmp"
xdebug.profiler_output_name =
"cachegrind.out.%t-%s"
xdebug.remote_enable = 1
xdebug.remote_handler = "dbgp"
xdebug.remote_mode = "req"
xdebug.remote_port = 9000
保存文件,重新启动apache检查是否成功开启了xdebug服务。图3
<img src="/blog7style/images/common/sg_trans.gif" real_src ="/bmiddle/001RAPYRzy6SlFiFs5aa8&690" V:SHAPES="_x" TITLE=""
ALT="本地环境&XAMPP+phpStorm+XDebug+chrome&配置和断点调试" />
一种方法为在CMD里输入D:\xampp\php\php.exe
看到XDebug,说明成功开启XDebug。图4
<img src="/blog7style/images/common/sg_trans.gif" real_src ="/bmiddle/001RAPYRzy6SlFj5Inv89&690" V:SHAPES="_x" TITLE=""
ALT="本地环境&XAMPP+phpStorm+XDebug+chrome&配置和断点调试" />
另一种方法为浏览器打开localhost,找到phpinfo()点击打开配置情况,查找xdebug项,找到了说明xdebug配置成功。图5
<img src="/blog7style/images/common/sg_trans.gif" real_src ="/bmiddle/001RAPYRzy6SlFjPBHGe0&690" V:SHAPES="_x" TITLE=""
ALT="本地环境&XAMPP+phpStorm+XDebug+chrome&配置和断点调试" />
至此,服务器端配置完毕。
下面是客户端调试。打开phpStorm,进入File&Settings&PHP,这里要interpreter浏览,填D:\xampp\php\php.exe,自动识别版本。图6
<img src="/blog7style/images/common/sg_trans.gif" real_src ="/bmiddle/001RAPYRzy6SlFkliWZ49&690" V:SHAPES="图片_x0020_1" TITLE=""
ALT="本地环境&XAMPP+phpStorm+XDebug+chrome&配置和断点调试" />
进入File&Settings&PHP&Servers,这里要填写服务器端的相关信息,name填localhost,host填localhost,port填80,debugger选XDebug。图7
<img src="/blog7style/images/common/sg_trans.gif" real_src ="/bmiddle/001RAPYRzy6SlFlg5Qqb6&690" V:SHAPES="图片_x0020_4" TITLE=""
ALT="本地环境&XAMPP+phpStorm+XDebug+chrome&配置和断点调试" />
进入File&Settings&PHP&Debug,看到XDebug选项卡,port填9000,其他默认。图8
进入File&Settings&PHP&Debug&DBGp
Proxy,IDE
填 PHPSTORM,host
填localhost,port
填9000,点OK退出设置。图9
<img src="/blog7style/images/common/sg_trans.gif" real_src ="/bmiddle/001RAPYRzy6SlFmdJaW72&690" V:SHAPES="图片_x0020_16" TITLE=""
ALT="本地环境&XAMPP+phpStorm+XDebug+chrome&配置和断点调试" />
进入Run& Debug configurations,点+号,Server选填localhost,start
url填http://localhost/9999m,
填chrome,点OK退出设置。图10
<img src="/blog7style/images/common/sg_trans.gif" real_src ="/bmiddle/001RAPYRzy6SlFn6Mrycc&690" V:SHAPES="图片_x0020_10" TITLE=""
ALT="本地环境&XAMPP+phpStorm+XDebug+chrome&配置和断点调试" />
点OK退出设置之后,phpstorm运行按钮旁边自动填充localhost,且运行按钮由灰色被激活成为绿色。如果start
url填的是,没有填写9999m,则当点击phpstorm运行按钮,浏览器进入默认地址,没办法直接访问。图11
<img BORDER="0" src="/blog7style/images/common/sg_trans.gif" real_src ="/bmiddle/001RAPYRzy6SlFnN9zEce&690" V:SHAPES="图片_x0020_13" TITLE=""
ALT="本地环境&XAMPP+phpStorm+XDebug+chrome&配置和断点调试" />
chrome浏览器链接配置。找到对应的插件,chrome的为phpstrom
IDE Support chrome.crx,自己下载然后拖动文件到chrome设置&扩展程序。Chrome右上角增加了JB图标即为成功安装插件。图12
<img BORDER="0" src="/blog7style/images/common/sg_trans.gif" real_src ="/bmiddle/001RAPYRzy6SlFoq4NQf2&690" V:SHAPES="图片_x0020_22" TITLE=""
ALT="本地环境&XAMPP+phpStorm+XDebug+chrome&配置和断点调试" />
在phpStorm里打开监听,就是一个电话一样的按钮,点击变为绿色,在程序代码点前点击,设置程序段点,点击绿色的debug爬虫按钮,chrome浏览器打开xdebug页,phpStorm出现debug窗口,并获取到variables值,即为看到下面的debug信息,说明成功配置。图13
<img BORDER="0" src="/blog7style/images/common/sg_trans.gif" real_src ="/bmiddle/001RAPYRzy6SlFp7iJfb5&690" V:SHAPES="图片_x0020_28" TITLE=""
ALT="本地环境&XAMPP+phpStorm+XDebug+chrome&配置和断点调试" />
12.&&&&&&&
链接真心的不错,/xampp-phpstorm-xdebug.html
就是第7步“7.进入File&Settings&PHP&Debug&DBGp
Proxy,IDE
填 PHPSTORM,host
填localhost,port
填80。”需要改动下port填为9000。总归要点100个赞。
<img BORDER="0" src="/blog7style/images/common/sg_trans.gif" real_src ="/bmiddle/001RAPYRzy6SlFsaFhX8d&690" V:SHAPES="图片_x0020_31" TITLE=""
ALT="本地环境&XAMPP+phpStorm+XDebug+chrome&配置和断点调试" />
13.页面传图不让直接粘贴,所以编个号图n
,汗吧。你可以先弄好10,其他的次序就不要瞎胡变啦就。<img TYPE="face" src="/blog7style/images/common/sg_trans.gif" real_src ="/uc/myshow/blog/misc/gif/E___7401ZH00SIGG.gif" STYLE="line-height: 1.5;"
ALT="本地环境&XAMPP+phpStorm+XDebug+chrome&配置和断点调试"
TITLE="本地环境&XAMPP+phpStorm+XDebug+chrome&配置和断点调试" /><img TYPE="face" src="/blog7style/images/common/sg_trans.gif" real_src ="/uc/myshow/blog/misc/gif/E___7400ZH00SIGG.gif" STYLE="line-height: 1.5;"
ALT="本地环境&XAMPP+phpStorm+XDebug+chrome&配置和断点调试"
TITLE="本地环境&XAMPP+phpStorm+XDebug+chrome&配置和断点调试" />
捣鼓着不小心得两小时多了吧。
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。Windows7上Apache2.2+PHP5.2.17+Zend Studio 8.0.1 配置DEBUG调试环境 - Apache当前位置:& &&&Windows7上Apache2.2+PHP5.2.17+Zend Studio 8.0.1 Windows7上Apache2.2+PHP5.2.17+Zend Studio 8.0.1 配置DEBUG调试环境&&网友分享于:&&浏览:135次Windows7下Apache2.2+PHP5.2.17+Zend Studio 8.0.1 配置DEBUG调试环境
为了改造WordPress需要先看源码,但是没有DEBUG环境也无法查看源码!于是乎,开始在网上找搭建DEBUG环境,由于第一次接触PHP,使用的编译器又是Zend Studio 9.0.2,在网上根本没有基于Zend Studio 9的Aapche2+PHP5的Debug环境搭建!摸索了1个礼拜,最终还是没有搭建好,时间原因只好退一步,改为使用Zend Studio 8.0.1,当然更大一部分原因是发现PHP官网上有这么一句话:在这个http://www.php.net/downloads.php下载页面有个链接,打开以后选择Windows Binaries(基于Windows的二进制包)
Windows Binaries
For the Windows binaries and installer, see http://windows.php.net/download/.
点进去以后看左边有如下一段话:
Which version do I choose?
If you are using PHP with Apache 1 or Apache2 from apache.org you need to use the VC6 versions of PHP坑爹啊。。。刚开始下载的时候没仔细看,所以我下载的是当时最新的那个php-5.4.0-Win32-VC9-x86。。。于是乎我下了php-5.2.17-Win32-VC6-x86,VC6的只有这个是最高版本。。。下载解压,并配置环境变量后,再次开始搭建DEBUG环境。。。基于Apache2.2 + PHP 5.2.17 + Zend Studio 8.0.1 + Zend Debug的DEBUG环境!第一步:到Zend官网下载ZendDebug打开 /en/products/studio/downloads 下载Studio Web Debugger,我当时下载的为:ZendDebugger--cygwin_nt-i386.zip 这个东东!对了,下载首先需要注册的。。。就注册个呗。。。第二步:配置Zend Debug解压下载的zip包到任意目录,打开目录中的README.txt!自己看吧。。。最终结果(以我自己的解压目录为例)就是需要在PHP.ini文件中添加如下2行:
zend_extension_ts="d:/sotf/ZendDebugger--cygwin_nt-i386/5_2_x_comp/ZendDebugger.dll"
zend_debugger.allow_hosts="127.0.0.1"
也即把README.txt中这2行等号右边的部分替换为如上对应自己的解压目录即可!同时,别忘记把解压目录中的dummy.php文件拷贝到你的Apache的Web根目录中,一定要是根目录中哦。。。第三步:OK!验证是否生效!配置完毕,ReStart你亲爱的Apache!随便写个php文件,里边就写一句话如下,比如叫kengdie.php:&html&&body&&h1&
echo "坑爹的DEBUG!";
phpinfo();
&/h1&&/body&&/html&扔到Apache的根目录下,打开你可爱的浏览器,访问kengdie.php!OK!到此,你是不是看到输出一大堆信息了?不要急,不要慌,淡定,蛋定!往下拉,大概在整个页面3/4的位置,STOP!看看是不是出现了如下信息:Zend Debugger
Passive Mode Timeout
20 seconds
Directive Local Value Master Value
zend_debugger.allow_hosts 127.0.0.1 127.0.0.1
zend_debugger.allow_tunnel no value no value
zend_debugger.deny_hosts no value no value
zend_debugger.expose_remotely never never
zend_debugger.httpd_uid -1 -1
zend_debugger.max_msg_size 7152
zend_debugger.tunnel_max_port
zend_debugger.tunnel_min_port
如果没看到,没关系,再仔细看,如果还是没看到!那么请你仔细看本文中的每一步,你是否出差错了?或者给我email,我们探讨探讨,互相学习学习!第四步:开始验证是否能DEBUG在Zend Studio中新建一个PHP Project,新建一个php文件,随便输出2行!加断点,右键点击DEBUG AS--& PHP Script, OY,进来了!可以DEBUG!对了,别忘了把编译器中默认的PHP执行程序替换为你自己所安装的PHP即可!还可以右键DEBUG AS--& PHP Web Page,进行内置的浏览器调试!很遗憾,在外置浏览器中还是不能进行调试。。。。。。继续研究中。。。
12345678910
12345678910
12345678910 上一篇:下一篇:文章评论相关解决方案 12345678910 Copyright & &&版权所有}

我要回帖

更多关于 zendstudio添加服务器 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信