netbeans无法连接xdebug

来自个人维基
跳转至: 导航搜索

提示无法连接是因为php默认没有使能xdebug,但这个插件在windows一般是包含的, linux可以用命令安装或从官网下载源代码编译。

netbeans官方指南见:http://wiki.netbeans.org/HowToConfigureXDebug

Xdebug官网:http://xdebug.org

使能xdebug很简单:

zend_extension = "/usr/lib/php/extensions/no-debug-non-zts-20090626/xdebug.so"
xdebug.remote_enable=on
xdebug.remote_log="/var/log/xdebug.log"
xdebug.remote_host=localhost
xdebug.remote_handler=dbgp
xdebug.remote_port=9000

把这一段放在php.ini最后即可。

  • 关于ubuntu的php.ini, 可以改成以下这个结构:
root@kaigo-desktop:/etc/php5# tree
.
├── apache2
│   ├── conf.d -> ../conf.d
│   └── php.ini
├── cgi
│   ├── conf.d -> ../conf.d
│   ├── php.ini -> /etc/php5/apache2/php.ini
│   └── php.ini.bak
├── cli
│   ├── conf.d -> ../conf.d
│   ├── php.ini -> /etc/php5/apache2/php.ini
│   └── php.ini.bak
└── conf.d
    ├── mysqli.ini
    ├── mysql.ini
    ├── pdo.ini
    └── pdo_mysql.ini

最后用命令确认一下是否生效(windows需进入php文件夹):

$php -i | grep xdebug

xdebug.remote_enable => On => On
xdebug.remote_handler => dbgp => dbgp
xdebug.remote_host => localhost => localhost
xdebug.remote_log => /var/log/xdebug.log => /var/log/xdebug.log
xdebug.remote_mode => req => req
xdebug.remote_port => 9000 => 9000

——这样应该就是ok的了,快试试吧.

  • ps
    • 通过php -i也可以了解php的一些配置信息,比如使用的是哪个php.ini
    • wamp只更改apache下的php.ini貌似不行,要同时更改 bin\apache\apache2.2.22\bin\php.ini和 php\php5.4.3\php.ini
    • chrome浏览器对应的netbean插件在 NETBEANS_INSTALL/webcommon/modules/lib/