【问题标题】:Configuring PhpStorm with Xdebug and Vagrant使用 Xdebug 和 Vagrant 配置 PhpStorm
【发布时间】:2017-07-19 19:58:30
【问题描述】:

我正在尝试使用 Xdebug 和 Vagrant (Drupal VM) 配置 PhpStorm 2016.2。我已经阅读了许多指导如何配置这三个应用程序的教程。我想它快到了,但我不确定这个错误是什么?

当我单击设置路径映射时,“项目中的文件路径”似乎是问题所在。在 Vagrant 我有:

  • /var/www/drupalvm/sitelog/index.php

在我的本地我有:

  • /Users/24ma13wg/PhpstormProjects/sitelog/index.php

...但我的项目文件中没有 index.php:

我该如何解决这个问题?谢谢。


A

B

【问题讨论】:

  • 1) "...但是我的项目文件中没有index.php:" 那是因为你创建了一个项目仅适用于您网站的一部分。 2) “在我的本地我有:/Users/24ma13wg/PhpstormProjects/sitelog/index.php -- 你没有 -- 再次比较你的路径 -- 你的截图显示你已经创建了项目在子文件夹中 (/sitelog/modules/sitelog) .. 而 index.php 应该在 /sitelog/index.php -- 现在它在项目之外。
  • 没错,index.php 在项目之外。我承认这是一个不寻常的设置。我从 drupal.org 上的 git repo 创建了我的项目,它只包含模块文件。我在它周围添加了其余的站点文件,只是为了获得一个工作站点。你是说要让调试器工作,所有站点的文件都必须在项目中 - 所以我需要重新创建我的项目。抱歉,我不知道所有这些应用程序是如何工作的。
  • 嗯......您创建项目的方式可能足以进行实际编码。但这对于调试整个站点可能还不够好——抱歉,我自己不是 Drupal 用户,所以不知道最佳实践等。如果您阅读/观看的教程说它可以通过这种方式进行调试(只有您的模块代码)然后......看起来更深入。现在 IDE 正在寻找 index.php,因为它是您网站的入口点 .. 在项目中找不到它.. 所以从 IDE 方面来看,这表明可能配置错误(这是一个调试会话,文件被执行.. 但是你没有)。
  • IDE 在Settings/Preferences | Languages & Frameworks | PHP | Debug 有选项,特别是 -- Force break at first line when a script is outside of the project -- 这是这里必须发生的事情。如果你禁用它..调试器应该忽略这一刻(正在执行的脚本在项目之外)并且应该像往常一样继续运行直到断点被命中(当执行通过 Drupal 的内部并到达它命中的点时您的实际文件)。理论上它应该可以工作(同样:我自己不是 Drupal 用户,所以不能肯定地说明这一点)。
  • 一些链接以防万一:1)confluence.jetbrains.com/display/PhpStorm/… 2)confluence.jetbrains.com/display/PhpStorm/…。所以... 1)为您在项目中拥有的代码设置路径映射(对于您当前的项目根,它应该是/var/www/drupalvm/sitelog/modules/sitelog) 2)禁用上述选项 3)查看我给您的第二个链接 4)尝试调试再次

标签: drupal vagrant phpstorm xdebug


【解决方案1】:

要解决需要启用Force break at the first line when a script is outside the project 的问题,可以通过配置PHPStorm 与DrupalVM 中的PHP Interpreter 对话来解决。

导航到Preferences -> Languages and Frameworks -> PHP,然后单击 CLI 解释器旁边的 ...。在弹出的下一个窗口中,单击顶部的+,然后选择From Docker, Vagrant, VM, Remote。通过导航到 DrupalVM 的本地路径来选择 Vagrant Instance Folder。在每个打开的窗口上单击OK 以关闭选项。

从这里开始,您只需启用 PHPStorm 以开始侦听新的调试连接,并且需要发送一个 cookie 以允许连接到 xDebug。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-28
    • 2017-04-18
    • 2023-03-12
    • 1970-01-01
    • 2014-08-10
    相关资源
    最近更新 更多