您好,欢迎访问一九零五行业门户网

[PHP+xdebug] 在Ubuntu 14.04下的PhpStorm中配置xdebug调试环境

在配置过程中参考了一些文章, 中英文的都有.. 但是都不能完整地解决这个问题. 经过一些折腾终于可以调试了, 现记录如下, 希望对后来人有所帮助.
1. 安装xdebug 第一步: 得到本地php配置信息
在终端中运行: php -i > outputphp.txt
然后将得到的txt文件中的信息拷贝并复制到http://xdebug.org/wizard.php 这个页面提供的一个textarea中. 然后点击下方的analyze按钮, 它会自动帮你解析你本地的php环境信息从而得到你需要下载的xdebug版本和相关配置指令.
第二步: 得到需要下载的版本和相关指令
比如, 我得到的信息如下:
download xdebug-2.3.2.tgz unpack the downloaded file with tar -xvzf xdebug-2.3.2.tgz run: cd xdebug-2.3.2 run: phpize (see the faq if you don’t have phpize.
部分输出如下所示:
configuring for:

zend module api no: 20121212
zend extension api no: 220121212
如果没有以上输出, 那么代表你的phpize有问题. 参考faq.
run: ./configure
run: make run: cp modules/xdebug.so /usr/lib/php5/20121212 以上有些步骤也许需要sudo.
第三步: 向php.ini中添加配置项
sudo vim /etc/php5/cli/php.ini
zend_extension = /usr/lib/php5/20090626/xdebug.so
xdebug.remote_host = 127.0.0.1
xdebug.remote_enable = 1
xdebug.remote_port = 9000
xdebug.remote_handler = dbgp
xdebug.remote_mode = req
如非必要, 以上的配置项不需要修改. 之前我就是想当然的将remote_port那一项修改成了我的应用在server上的端口号, 导致无法调试. 花了好些时间才定位到是这里的问题.
到这里, xdebug就安装成功了. 可以通过php ?version命令进行验证:
php 5.5.9-1ubuntu4.7 (cli) (built: mar 16 2015 20:47:39) copyright
(c) 1997-2014 the php group zend engine v2.5.0, copyright (c)
1998-2014 zend technologies
with xdebug v2.3.2, copyright (c) 2002-2015, by derick rethans
with zend opcache v7.0.3, copyright (c) 1999-2014, by zend technologies
可以发现输出中已经存在了xdebug的信息.
2. 安装 xdebug extension helper 在主流的浏览器上都有xdebug的扩展助手插件, 能够帮助你方便的打开或者关闭调试功能, 为什么需要这个插件, 可以参考这篇文章中的4, 5, 6小节(是英文的, 有兴趣的同学可以自行查阅)
以chrome为例, 在这里找到插件的安装地址:
https://chrome.google.com/webstore/detail/xdebug-helper/eadndfjplgieldjbigjakmdgkmoaaaoc?hl=en
如果打不开, 可以参考这篇文章, 介绍了如何利用插件的id进行离线下载, 毕竟现在google的服务全面被墙…..
xdebug helper的插件id是: eadndfjplgieldjbigjakmdgkmoaaaoc
安装完毕之后, 打开该插件的options, 设置idekey为phpstorm.
3. 配置phpstorm 终于到最后一步了, 这一步很简单.
就是勾选run菜单下的start listening for php debug connections.
然后在你需要调试的地方打个断点, 最后在浏览器中输入php脚本的地址就可以了. 注意要启用之前安装的xdebug helper.
启用的方法是:
ok, 开心地进行调试吧!!!
原理示意图(从xdebug的官网上引用的)
主要参考文章: https://confluence.jetbrains.com/display/phpstorm/zero-configuration+web+application+debugging+with+xdebug+and+phpstorm
http://icephoenix.us/php/how-to-setup-local-php-debugging-with-phpstorm-and-xdebug/
http://xdebug.org/docs/remote#starting
其它类似信息

推荐信息