gpt4 book ai didi

php - 远程服务器的 Xdebug 未连接

转载 作者:IT王子 更新时间:2023-10-29 00:59:54 24 4
gpt4 key购买 nike

我希望一个使用不同计算机的团队能够在 远程 服务器上调试 PHP,但我很难让 Xdebug 在 NetBeans 7.0.1 中工作。我尝试了许多在线技巧,但都无济于事。

作为记录,我已在运行 WampServer 的 Windows 7 机器上成功安装了 Xdebug 本地。所以我可以在 NetBeans 中使用断点调试 PHP,前提是我将 Project Properties->Run Configuration->Run As 属性设置为 Local Web Site .但是,如上所述,我的目标是在 远程网站 上在 NetBeans 中进行调试。

我的服务器是 Ubuntu 11.04 机器。我使用了 http://www.xdebug.org/find-binary.php 的输出将正确的二进制文件放在机器上。我已经修改了我能找到的所有 php.ini 文件(在 php5/apache2php5/cli 目录中)以包含这些行:

zend_extension="/usr/lib/php5/20090626+lfs/xdebug.so"
xdebug.remote_enable=1
xdebug.remote_handler=dbgp
xdebug.remote_host=localhost
xdebug.remote_port=9000

如果我检查 phpinfo.php 网页,它会说:

This program makes use of the Zend Scripting Language Engine:
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
with Xdebug v2.1.2, Copyright (c) 2002-2011, by Derick Rethans

所以 Xdebug 似乎安装正确。不过,当我尝试在 NetBeans 中进行调试时,我会收到无休止的状态栏消息 Waiting For Connection (netbeans-xdebug)。当我点击停止按钮时,我得到 X 秒内未检测到来自 xdebug 的连接。原因可能是 xdebug 未安装或配置不正确

也许我在这里将本地设置与服务器设置混淆了? A postxdebug.remote_host 应该设置为 运行 NetBeans 的机器的 IP,但我希望团队能够使用具有不同 IP 地址的机器进行调试。问题可能是端口 9000,但我检查过它没有被阻塞。

任何可以澄清这一点的帮助将不胜感激!

最佳答案

运行 PHP(和 XDebug)的服务器需要能够连接到您的工作站/桌面。

Diagram

因此,您需要通过告诉服务器连接到特定 IP 地址(xdebug.remote_host)或自动“回连”来相应地设置服务器“(xdebug.remote_connect_back)。不过,后者有一些安全隐患。这些概述了in the manual .

关于php - 远程服务器的 Xdebug 未连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8049776/

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