Netbeans不会连接到xdebug。我尝试过以下帖子的建议:
Debugging IDE's port connection to XDebug: "Waiting to Connect"
netbeans shows "Waiting For Connection (netbeans-xdebug)"
但它不能解决我的问题。
似乎Netbeans连接到xdebug,因为在等待连接时,对Web服务器[Apache2]的所有请求都被阻止。端口[9001]似乎正在使用中:
roxy@Pixy011 ~ $ sudo nmap -sS -O 127.0.0.1
Starting Nmap 6.00 ( http://nmap.org ) at 2013-11-28 20:48 EST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000029s latency).
Not shown: 990 closed ports
PORT STATE SERVICE
22/tcp open ssh
139/tcp open netbios-ssn
443/tcp open https
445/tcp open microsoft-ds
631/tcp open ipp
902/tcp open iss-realsecure
3306/tcp open mysql
8080/tcp open http-proxy
8081/tcp open blackice-icecap
9001/tcp open tor-orport <---- Opened by java
xdebug.ini:[我已确认它已加载到phpinfo()]
zend_extension=/usr/lib/php5/20100525/xdebug.so
xdebug.remote_autostart=1
xdebug.remote_enable=1
xdebug.remote_handler="dbgp"
xdebug.remote_mode="req"
xdebug.remote_host="127.0.0.1"
xdebug.remote_port=9001
xdebug.idekey="netbeans-xdebug"
Netbeans配置:
Debugger port: 9001
Session ID: netbeans-xdebug
Stop at first line: Checked
All other options are unchecked
项目属性:
Host: 127.0.0.1
Port: 9001
编辑: 我注意到Netbeans没有将XDEBUG_SESSION_STOP附加到URL。我不认为这与问题有关,因为Netbeans仅在我关闭调试会话后打开页面。
我也禁用了SELinux
答案 0 :(得分:26)
在Ubuntu 13.04 64bit php 5.4.9-4 Xdebug v2.2.3 netbeans 7.4
我有同样的问题并通过以下方式解决:
1.继续http://xdebug.org/wizard.php按照说明编译自己的xdebug.so
2.在netbean 7.4一般选项(对不起,我没有声望10发布图片)
测试连接。确保代理服务器上的设置正确:
对我说“没有代理人”正在发挥作用
3.在php选项调试选项卡中将xdebug设置端口更改为9001或9000以外的其他设置。
我选择9002,但你可以尝试,直到你找到一个自由端口(如果端口不是免费的,请告诉你)
4.在/etc/php5/conf.d/20-xdebug.ini中的 ubuntu用户的php.ini OR
zend_extension = / usr / lib / php5 / 20100525 / xdebug.so #where你把你的重新调整的xdebug.so发送到了 [Xdebug的]
xdebug.remote_autostart = 0
xdebug.remote_enable = 1
xdebug.remote_handler = “dbgp”
xdebug.remote_mode = “REQ”
xdebug.remote_port = 9002#您已找到免费的端口并设置在上面的netbeans中 xdebug.remote_host = 127.0.0.1
xdebug.profiler_enable = 0
xdebug.profiler_output_dir = “/ TMP /”
xdebug.idekey = “netbeans的-Xdebug的”
xdebug.remote_log =“/ home / #user_name#/ xdebug.log”#your user name
5。 sudo service apache2 restart
执行此操作后,我可以再次调试php。
答案 1 :(得分:1)
让xdebug与Netbeans一起在virtualbox ubuntu机器上工作时,我面临着同样的问题。
PHP 7.4版
更改了以下文件
"/etc/php/7.4/apache2/conf.d/20-xdebug.ini"
并添加了以下几行
zend_extension="/usr/lib/php/20190902/xdebug.so"
xdebug.remote_enable=1
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000
xdebug.remote_log = "/var/log/xdebug.log"
请注意,以下行包含用于定义路径的双引号。
zend_extension="/usr/lib/php/20190902/xdebug.so"
答案 2 :(得分:0)
有同样的问题:
"?nocache=" + Math.random()
解决方案:重新启动NetBeans。 正在运行一个等待连接的死进程。
这里的Netbeans正在运行调试会话。请注意 CLOSE_WAIT 和 TIME_WAIT 。
$ netstat | grep 9000
...
tcp6 1 0 localhost:9000 localhost:37486 CLOSE_WAIT
答案 3 :(得分:0)
我遇到了同样的问题,我尝试了很多我在那里找到的解决方案,但问题仍然存在。我试图按照enter link description here
中的步骤进行操作和
那,whttp:// localhost / abc / trunk / abc / backend / web /?XDEBUG_SESSION_START = netbeans-xdebughen我调试我的项目,我的netbeats仍在等待连接,直到我必须有以下&#34;?的 XDEBUG_SESSION_START = netbeans的-Xdebug的强>&#34;在我的网址中 http://localhost/abc/trunk/abc/backend/web/?XDEBUG_SESSION_START=netbeans-xdebug 所以netbeans能够与xdebug连接
答案 4 :(得分:0)
**在Windows 10上使用Netbeans 8.0运行内置于webserver **的Netbeans
php.ini文件中的以下选项为我解决了这个问题:
zend_extension =&#39; C:\ php安装路径\ ext \ php_xdebug-2.5.0-5.6-vc11.dll&#39; xdebug.remote_enable =上
这个问题似乎可以通过使用.dll文件的完整路径来解决。另外,因为我在路径名中有空格,所以我必须用引号括起路径(双重与单一似乎并不重要)。另外,我必须设置xdebug.remote_enable选项。一旦我设置了两个选项,我就可以在Netbeans中选择Debug Application选项并启动调试器。
答案 5 :(得分:0)
我遇到了类似的问题,在我的情况下,我最近更新了我的php版本,xdebug配置是在唯一的php5文件夹中。只需要将旧的xdebug配置复制到新版本的新php.ini文件中,它就像以前一样工作。
调试它的一些技巧是:
答案 6 :(得分:0)
对于 Xdebug v>=3
如果您在尝试上述所有答案后仍然遇到问题。并且你有 Xdebug 版本 >=3 然后只尝试我的步骤。
在 v3 中更改了一些设置。
9000
更改为 9003
。所以在 php.ini 和 netbeans IDE 中更改它。添加xdebug.start_with_request="yes"
添加 xdebug.client_host = localhost
。 (旧的 xdebug.remote_host=localhost
在 v3 中不再有用)
添加xdebug.mode=debug