gpt4 book ai didi

使用 XDebug 进行 PHP 远程调试

转载 作者:可可西里 更新时间:2023-10-31 23:50:26 25 4
gpt4 key购买 nike

我有很多关于如何在远程服务器上使用 xdebug 和 eclipse 调试 php 文件的问题。

我想实现的是:我有一个远程服务器(带有 WAMPP(appache(端口 8502)、php、mysql(端口 8501)等)),我想使用本地 PC 上的 Eclipse PDT 调试 php 文件。

我准备了以下东西:

  • 已安装 Eclipse PDT(构建 ID:
    20100617-1415) 在我的本地 PC 上
  • 安装并激活了 xdebug远程服务器(可在(让说)111.111.111.111:8502)与中的以下配置php.ini

[XDebug]
zend_extension = C:\TYPO3_4.4.6\php\ext\php_xdebug-2.1.0-5.3-vc6.dll
xdebug.profiler_output_dir = "C:/xampp/tmp/xdebug"
xdebug.profiler_output_name = "cachegrind.out.%p"
xdebug.profiler_enable = 0
xdebug.profiler_append=0
xdebug.extended_info=1
xdebug.remote_enable=1
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000
xdebug.idekey=ECLIPSE_DBGP
xdebug.remote_log="C:\TYPO3_4.4.6\tmp\xdebug\xdebug_remote.log"
xdebug.show_exception_trace=0
xdebug.show_local_vars=9
xdebug.show_mem_delta=0
xdebug.trace_format=0

  • 在 Eclipse 中我添加了服务器“窗口 - PHP - PHP 服务器”与网址“http://111.111.111.111:8502”和路径映射 - 服务器上的路径:"C:\TYPO3_4.4.6\htdocs"和路径在工作区:“/debug_test”(我创建了一个名为“debug_test”的 PHP 项目。

  • 我还将 PHP - 调试更改为以下内容:

    • PHP 调试器:XDebug
    • 服务器:111.111.111.111
    • PHP 可执行文件未定义
  • 接下来我添加了调试配置(PHP 网页):

    • 服务器调试器:XDebug
    • PHP 服务器:111.111.111.111
    • 文件:/debug_test/debug.php
    • 在第一行换行:off
    • 自动生成:开启
  • 我在位于 C:\TYPO3_4.4.6\htdocs\debug_test\的远程服务器上和我的 PHP 项目(“debug_test”)中创建了文件 debug.php。

如果我现在运行“调试”并选择我的配置文件,将弹出带有 URL http://111.111.111.111:8502/debug_test/debug.php?XDEBUG_SESSION_STOP_NO_EXEC=ECLIPSE_DBGP&KEY=129657398681515 的网页(在外部浏览器中)并且页面作为普通页面(完全)加载,但无法调试它。即使我切换到 PHP 调试 - 查看并插入任何断点或类似的东西,也没有什么比调试更好的了。

我如何达到可以使用 xdebug 和 eclipse pdt 进行远程调试的地步?

干杯,奶酪

最佳答案

您确定您的 XDebug-Client/PC 可以从您的服务器通过 127.0.0.1 访问吗?

B/c 如果我对你的理解正确,你的服务器没有安装在你的电脑上。 OTOH 那么我想知道您是如何设置 ypur XAMPP 系统的。 B/c 然后通常你所有的东西都在本地安装。

浏览器的行为也很重要。如果在通过 Eclipse 调用 XDebug session 后您的站点已完全加载,则 Eclipse 中的 XDebug-Client 无法访问您的服务器。如果您看到您的浏览器试图加载该页面但它停滞了,那么您的客户端可以告诉服务器启动 XDebug session ,但您在服务器上的 XDebug 无法连接回来。

您为服务器指定的端口 8502 也有点奇怪,但根据相应的配置可能是正确的。

最好的问候

拉斐尔

编辑:对于第一次尝试,您应该在第一行启用中断

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

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