- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
php开发环境的Debug配置全解
因为无法上传图片,所以我把本文所用到的参考图片全部放到的本文的最后,按照出现的先后顺序而排列,在看本文的时候希望能够配合后面的图片一起查看会更加的清楚.
原理分析:
要php实现debug功能一共要做好三处配置。
1.配置php的开发环境和Debug,
2.把IDE中开发的项目配置到web服务器中
3.把Debug功能所产生的参数给发送到IDE的Debug模块中显示出来,因此phpini 扩展的Debug的xdebug.remote_port所指定的端口就是其他接收此Debug程序在调试过程中所产生的参数所使用的端口,因此IED中的Debug的端口一定要和phpini中的指定的端口一样,否则IDE的debug模块肯定获取不到数据,自然也就无法调试了,要搞清楚的一点是:真正的Debug执行是再php的开发包中完成的,不是在编辑环境IDE中完成的,IDE只是显示一下Debug过程中的参数变化情况而已,当然在IDE中Debug的过程中是可以进行监视的,但是那监视也是调用了php编辑环境中的Debug扩展实现的。
第一步:
Php的Debug功能是由其他的代理商提供的,而php是由php的公司提供的,它们来至不同的公司,而且又没有集成,所以就需要通过类似于添加插件的方式(添加扩展来实现,因为它是对php的源代码进行调试的,所以它肯定是放在了php开发包里面的,也就是放在php的ext文件里面(ext就是扩展包),只是把它放了进去是没有用的,必须要让php环境给检测到它的存在,而php环境启动的时候首选是要检测配置文件里面所配置的参数,然后去查找对应的参数所配置的资源文件,如果有参数但是配置的资源文件是不存在的,那么Apache就是启动不了的,因为它启动了也是错误的,所以它干脆就不启动,还有一种情况就是我们所下载的XDebug的版本跟我们目前的php版本不兼容,不论是什么原因反正结果就是它们在一起组合是不能够正常运行的,因此配置好第一步我们需要解决上述的几个矛盾。
下载正确的Xdebug版本,首先把自己的phpinfo给输出出来,复制一份,然后在浏览器中打开以下的链接:/find-binary.php,之后把复制好的code放进去,点击页面下面的Analyse my phpinfo() output 按钮(查看截图(检测自己php应该下载哪一个xdebug的网页截图.png),等待网页的回复(查看截图(回复.png),这个时候它们会给你一个正确的提示并且把对应Xdebug的下载链接也直接在网站上给出,这个时候你只需要点击以下链接就可以下载到正确的版本,而且还会告诉你你下载这个版本之后应该怎么做,一般就是让你把下载好的Xdebug放进php的ext扩展文件中,然后再phpini里面把它的路径给配置进去就行了。
配置phpini,虽然你的Xdebug版本是正确的,但是如果你的Xdebug配置不正确的话,比如你的远程的端口配置,你的Xdebug开启的功能…你还是用不了它的,因此配置好phpini需要一样的重要:以下就是我的phpini对应Xdebug的配置,大部分情况下这几项配置对了一般都不会有问题的,
[Xdebug]
;Xdebug的存放路径,这里有个小问题就是, zend_extension_ts的写法,如果你的phpinfo在检测之后提示的是Thread Safe Build:yes那么你就需要使用zend_extension_ts个写法,否则你就需要zend_extension的写法,这个也是很重要的(注意如果你事把这段直接复制的话,需要在ini中把这些文字删除掉或者在每一行的前边加上”;”来注释掉它,否则在Apache启动的时候就会出错)
zend_extension_ts= C:\Program Files\PHP\ext\php_xdebug-2.1.2-5.2-vc6.dll
;是否开启自动跟踪
xdebug.auto_trace = On
;是否开启异常跟踪
xdebug.show_exception_trace = On
;是否开启远程调试自动启动
xdebug.remote_autostart = On
;是否开启远程调试
xdebug.remote_enable = On
;允许调试的客户端IP
xdebug.remote_host=
;远程调试的端口(默认9000)
xdebug.remote_port=9000
;这里需要注意的是如果你的扩展的路径没有错,而且Apache也无法启动的话,那就说明你的端口可能被占用了,这个时候你需要把这个端口给修改一下,你可以任意指定一个其他的端口,比如9999。
;调试插件dbgp
xdebug.remote_handler=dbgp
;是否收集变量
xdebug.collect
文档评论(0)