gpt4 book ai didi

php - Eclipse Xdebug 卡住在 57%

转载 作者:行者123 更新时间:2023-12-01 05:15:53 25 4
gpt4 key购买 nike

我的问题:

当从 Eclipse 为我的一个 php 页面启动调试配置时,该页面在 Chrome 中成功打开,但 Eclipse 调试器卡住在 57%(在 Eclipse 的右下角)并且不再继续。设置的断点永远不会到达。

我的设置:

  • MAMP 2.2
  • PHP 5.3.3
  • eclipse 开普勒
  • Eclipse PDT
  • Xdebug
  • 2 个虚拟主机,其根位于/Applications/MAMP/htdocs
  • Apache 端口:80
  • MySql 服务器端口:3306

  • 我在 MAMP 中的虚拟主机设置工作正常。以下是有关 Xdebug 设置的屏幕截图:

    Eclipse XDebug Configuration

    Eclipse PHP Server Configuration

    Eclipse PHP Executable Configuration

    php.ini Xdebug contents

    我怀疑问题是由我的虚拟主机引起的。两个虚拟主机位于“/Applications/MAMP/htdocs/ledworld”和“/Applications/MAMP/htdocs/sandbox”下。我目前正在尝试调试沙箱项目。

    如果您能提供有关我应该对附加屏幕截图进行哪些更改的详细说明或有关如何设置的分步说明,那就太好了!

    最佳答案

    这是其他人对此问题的完整解决方案:

    您的底部 /Applications/MAMP/bin/php/<your_php_version>/conf/php.ini应该是这样的:

    [xdebug]
    zend_extension="/Applications/MAMP/bin/php/<your_php_version>/lib/php/extensions/no-debug-non-zts-<timestamp>/xdebug.so"
    xdebug.remote_enable=1
    xdebug.remote_host=sandbox
    xdebug.remote_port=9000
    xdebug.remote_handler=dbgp
    xdebug.idekey=ECLIPSE_DBGP
    xdebug.remote_log=/tmp/xdebug.log

    请注意,然后 xdebug.remote_host选项设置为您为虚拟主机提供的名称。所以就我而言,我的 httpd-vhosts.conf 文件将包含这样的条目
    <VirtualHost *:80>
    ServerName sandbox
    DocumentRoot /Applications/MAMP/htdocs/sandbox/
    <Directory /Applications/MAMP/htdocs/sandbox/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    allow from all
    </Directory>
    </VirtualHost>

    和我的 /private/etc/hosts文件会有这样的条目
    127.0.0.1       sandbox

    从 Eclipse 方面来看,这是您应该做的。

    配置 Eclipse 的 XDebug 调试器。确保选择的端口与上面 php.ini 文件中指定的端口匹配

    如果您希望外部程序触发调试 session (例如 Chrome Xdebug 帮助程序扩展),请确保将“接受远程 session (JIT)”设置为“本地主机”。

    Eclipse Preferences->PHP->Debug->Installed Debuggers->XDebug->Configure->

    Eclipse Debugger Configuration

    在 Eclipse 中添加新的或编辑现有的 PHP 可执行文件:

    确保“可执行路径”和“php.ini 文件”字段指向 MAMP 使用的相同版本的 PHP(MAMP->Preferences...->PHP->PHP 版本。您可能不需要还要填写“php.ini 文件”字段,但我还是这样做了。

    Eclipse 首选项->PHP->PHP 可执行文件->添加/编辑

    Eclipse PHP Executable Configuration

    在 Eclipse 中设置服务器:

    我在 MAMP 下为 Apache 使用 HTTP 端口 80(MAMP->Preferences...->Ports->Apache Port)。如果您使用不同的端口,请确保将其包含在此屏幕中“基本 URL”的末尾。

    Eclipse 首选项->PHP->PHP 服务器->新建/编辑

    Eclipse PHP Server Configuration

    创建一个新的 Eclipse 调试配置,如下所示:

    “PHP 服务器”应设置为您在上面创建的服务器。 "file"应设置为您要在项目中调试的 php 文件。如果“URL”字段未显示您希望在浏览器中键入以加载 PHP 文件的内容(即 http://<virtual_host>/path/to/file/being/debugged.php ,请取消选中“自动生成”框并手动修改“URL”字段的第二部分,以便完整的 URL 是您所期望的。不要忘记添加您的 PHP 脚本期望在 $_GET 变量中找到的任何查询参数。

    Eclipse Debug Configuration

    调试配置的“调试器”选项卡应如下所示:

    确保“服务器调试器”设置为 XDebug。我喜欢取消选中“在第一行中断”选项,因为我发现总是在第一行代码中断很烦人。改用断点来控制调试器停止的位置。

    Eclipse Debug Configuration: Debugger Tab

    这就是您需要做的所有事情。调试愉快! :)

    关于php - Eclipse Xdebug 卡住在 57%,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20718933/

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