【发布时间】:2010-12-04 14:55:02
【问题描述】:
我正在使用 Netbeans 6.7 和 XDebug 在我的机器上调试 PHP 站点,从 Netbeans 中启动请求(Project->Debug)。这很好用,而且非常有用。
我的问题是:是否可以将调试器附加到任何传入的请求,而不仅仅是我从 Netbeans 中启动的请求?
即,不要单击“调试”,而是将 Netbeans 置于启动调试器并附加到下一个传入请求的模式。
我觉得这可能是一个愚蠢的问题,但如果可能的话,那就太好了。
编辑:更多信息
我的系统(Ubuntu 9.04)设置如下:
/etc/php5/conf.d/xdebug.ini的内容
zend_extension=/usr/lib/php5/20060613/xdebug.so
xdebug.remote_enable=on
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_host=localhost
xdebug.remote_port=9000
xdebug.idekey=netbeans-xdebug
Netbeans PHP 调试选项为默认值:
Debugger Port: 9000
Session ID: netbeans-xdebug
Stop at the First Line: ticked
我的/etc/hosts 文件将www.mywebsite.com 重定向到localhost
如果我单击 Netbeans 中的调试按钮,则会使用地址 http://www.mywebsite.com?XDEBUG_SESSION_START=netbeans-xdebug 启动 Firefox,并且调试器会按预期工作。
但如果我只是浏览到 http://www.mywebsite.com?XDEBUG_SESSION_START=netbeans-xdebug,这不会启动 Netbeans 中的调试器。
我也尝试过设置 xdebug.remote_host=www.mywebsite.com ,但这没什么区别。
另外,我启用了xdebug.remote_log,它显示了我从 netbeans 中启动时的信息,但没有显示外部请求。所以我认为 XDebug 根本看不到外部请求。
【问题讨论】:
-
注意:不是remote_handler r结尾吗?!?
-
@Fronker 是的,我认为你是对的,谢谢。固定。
-
对我来说,我不知道有三个位置我必须指定端口 = 9000,并且不匹配导致“等待连接(netbeans-xdebug)”:stackoverflow.com/a/41768167/470749
标签: php linux netbeans xdebug netbeans6.7