用Xdebug和Vagrant配置PhpStorm

问题描述:

我想用Xdebug和Vagrant(Drupal VM)配置PhpStorm 2016.2。我已阅读了许多教程,建议如何配置这三个应用程序。我认为它几乎在那里,但我不知道这个错误是什么?用Xdebug和Vagrant配置PhpStorm

enter image description here

当我点击设置路径映射,看来“项目文件路径”是问题。在流浪,我有:

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

在我的本地我有:

  • /用户/ 24ma13wg/PhpstormProjects/sitelog/index.php文件

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

enter image description here

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


一个enter image description here

enter image description here

+1

** 1)** *“但我的项目文件中没有index.php:”*这是因为您只为部分站点创建了项目。 ** 2)** *“在我的本地我有:'/Users/24ma13wg/PhpstormProjects/sitelog/index.php'"* - 你没有 - 再次比较你的路径 - 你的截图显示你已经在子文件夹('/ sitelog/modules/sitelog')中创建了项目,而'index.php'应该在'/ sitelog/index.php'中 - 现在它在项目之外。 – LazyOne

+0

当然,index.php不在项目中。我承认这是一个不寻常的设置。我从drupal.org上的git repo创建了我的项目,其中只包含模块文件。我添加了其余的网站文件,只是为了获得一个工作网站。你是说要让调试器工作,所有网站的文件必须在项目中 - 所以我需要重新创建我的项目。道歉,我不知道所有这些应用程序如何工作。 – 24ma13wg

+0

那么......你如何创建你的项目的方式可能足以做实际的编码。但是对于整个网站的调试可能不够好 - 对不起,不是Drupal的用户,所以我不知道最佳实践等。如果你读过/看过的教程说可以用这种方式调试它(只有你的模块代码)然后...更深入。现在,IDE正在寻找'index.php',因为它是您网站的入口点,并且在项目中找不到它..所以从IDE方面来看,这可能表明可能存在错误配置(这是一个调试会话,该文件被执行,但您没有它)。 – LazyOne

为了解决需要使Force break at the first line when a script is outside the project的问题,可以通过配置PHPStorm交谈的PHP解释器是DrupalVM来解决。

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

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