【问题标题】:Xdebug cannot connect to remote DBGp ProxyXdebug 无法连接到远程 DBGp 代理
【发布时间】:2022-01-13 00:48:51
【问题描述】:

我在 PHP 网络服务器 (IIS) 上运行 Xdebug 扩展,在不同的开发机器上运行 VSCode。

当我开始在没有代理的情况下在 VSCode(使用 Felix Becker 的 PHP 调试)中侦听 Xdebug 会话时,一切都按预期工作。

现在我正在尝试使用 dbgpProxy,因为开发机器上有多个开发人员。

我尝试在网络服务器上运行 dbgpProxy 并通过激活 VSCode 中的代理设置来注册它,但它失败并显示 Connection refused。同时,Xdebug 连接代理就好了,代理尝试根据 IDE 密钥转发传入的会话,但由于注册失败,当然找不到。

所以我尝试在开发机器上运行 dbgpProxy。这次VSCode注册成功了代理,但是当Xdebug尝试连接监听代理时失败了。

我很确定我知道我在做什么,端口是开放的,一切都应该工作,但它没有。

【问题讨论】:

    标签: visual-studio-code proxy xdebug


    【解决方案1】:

    原来是IP地址有问题。

    我使用默认设置运行代理,即服务器和客户端部分的 localhost (127.0.0.1),端口分别为 9000 和 9001。这是错误的(对于我的情况)。

    要侦听来自另一台机器的传入连接,代理必须配置为其运行的机器的真实 IP 地址,否则它不会侦听。

    在我的例子中,我决定在服务器上运行代理,所以我只为传入的客户端连接使用一个参数运行它,并将服务器参数保留为默认值(即 127.0.0.1:9000,当然还要在其中配置 XDebug php.ini 到这个地址和端口)。

    dbgpProxy.exe -i 10.123.54.76:9001

    【讨论】:

    • FWIW,出于安全考虑,我特意让它默认监听localhost。您通常不希望运行默认情况下具有开放 Internet 端口的服务。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-06-23
    • 1970-01-01
    • 2021-11-28
    • 2021-04-24
    • 2015-09-11
    • 1970-01-01
    • 2012-03-31
    相关资源
    最近更新 更多