gpt4 book ai didi

php - 使用 Netbeans 和 XDebug 进行远程 PHP 调试

转载 作者:IT王子 更新时间:2023-10-29 00:12:43 26 4
gpt4 key购买 nike

我正在尝试在以下场景中使用 XDebug

  • Windows 7 上的物理主机,带有 Netbeans 7.1.1
  • Ubuntu 上的虚拟访客,使用 Apache 服务器和 PHP 5.3.10
  • 我网站的 PHP 代码在 Ubuntu 的共享文件夹中,在/var/www/mysite 中
  • 可以从我的 Windows 主机访问 PHP 代码,在\\guestIP\mysite 上,具有 R/W 权限
  • 可从 http://mysite.local.fr 访问的网站, 来自主人和客人

我从我的 Windows 主机创建了一个 Netbeans 项目,指向\\guestIP\mysite。在项目运行配置中,我有以下内容:

  • 运行方式:本地网络服务器
  • 项目网址:http://mysite.local.fr
  • 索引文件:index.php(项目中存在)

在高级运行配置中:

  • 我勾选了“每次都询问”(我也尝试过使用“不询问”并自己使用 session key 启动浏览器)
  • 我尝试为映射设置 '/var/www/mysite' -\\GuestIP\mysite(也尝试不使用任何内容)
  • 我没有触及代理设置

我的 Ubuntu VM 上的 php.ini 中有以下内容

xdebug.remote_enable = on
xdebug.profiler_enable = off
xdebug.profiler_enable_trigger = off
xdebug.profiler_output_name = cachegrind.out.%t.%p
xdebug.profiler_output_dir = /tmp
;xdebug.remote_host=localhost,<HostIP>, mysite.local.fr
xdebug.remote_connect_back=1
xdebug.remote_handler=dbgp
xdebug.idekey="netbeans-xdebug"
xdebug.remote_mode=req

这些都不起作用,Netbeans 不会在 Windows 的任何断点处停止。

使用 Netbeans 从我的 VM 直接调试工作正常。

谁能告诉我如何让我的调试器从 Windows 远程工作?谢谢

最佳答案

对不起,我不能再评论了。 @David @JamesB41:我也一直在找这个。我的设置是带有 NetBeans 7.1 的 Windows 7 主机和 VirtualBox 中的 Ubuntu VM。我将 NetBeans 项目设置为远程项目,使用 SFTP 上传和下载。

以下设置适用于我,只需使用主机的 IP 作为 remote_host,并确保 VM 可以看到它。

xdebug.remote_enable=1
xdebug.remote_handler=dbgp
xdebug.remote_host=10.217.165.193
xdebug.remote_port=9000
xdebug.remote_log="/tmp/log/xdebug.log"

NetBeans 将在入口点断点处停止(如果您在 PHP->Debugging 中设置了该选项)。 但是,它不会在 NetBeans 创建的断点处停止,因为它会运行 VM 的文件。不过,您可以使用 xdebug_break(),它将显示堆栈和变量。 如果您在项目配置 > 运行配置 > 高级中正确映射文件夹,它将在 NetBeans 断点处停止并突出显示。惊人的。我完成了。

(connect_back 配置似乎没有帮助,可能是因为未填充 $_SERVER['REMOTE_ADDR']。)

关于php - 使用 Netbeans 和 XDebug 进行远程 PHP 调试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9818202/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com