如何告诉PHPStorm调试器,我的项目的文档根目录与项目根目录不同?

6

我正在尝试在 PHPStorm 中设置 xdebug。一切都启动良好,但断点无法正常工作,并显示“X”符号。

enter image description here

我使用的是 openserver,PHP 版本为 5.4,并直接在本地 Web 服务器上编辑文件,因此不需要文件映射。

我认为,我的问题是 web 服务器根目录位于项目根目录下方(出于安全原因),而 PHPStorm 不知道这一点。

项目根目录:C:\OpenServer\domains\mysite

Web 服务器根目录(在 nginx 中配置):C:\OpenServer\domains\mysite\httpdocs

我该如何告诉 PHPStorm,web 服务器运行的 index.php 实际上是C:\OpenServer\domains\mysite\httpdocs\index.php,而不是C:\OpenServer\domains\mysite\index.php


你的问题不够清晰。你是通过HTTP还是CLI运行Xdebug?你是否在Phpstorm项目中配置了Web服务器根目录?首先,什么是断点不起作用的意思?代码没有在那个点停止吗?你是否尝试过更明显的停止点?在深入挖掘之前,请先尝试这个。可能是调试会话没有启动。 - hakre
你解决了吗?我也遇到了一个类似的问题,我的项目也有一个子目录。我的断点在index.php上命中,但其他文件没有(尽管它们都显示了勾号符号)。 - benedict_w
我也遇到了类似的问题。在第一行函数上断点通常是正常的,但设置断点却完全没有任何作用。我可以步入所有代码文件,但无法使用断点。在尝试了所有其他方法之后,我得出结论,PHPStorm在根路径(在我的情况下是项目根目录中的“src”)上出现了问题。XDebug日志清楚地指示了我的路径映射的正确文件路径,但断点不起作用。 - rich remer
断点按钮中的 X 只是为了提示您,如果单击它,断点将被删除,而不是断点已经损坏。 - Synchro
2个回答

6

绝对是正确的答案。有人给这个可怜的家伙一些积分吧! - Johnny Kauffman

0

在我的情况下,我尝试了以下步骤:

  • 步骤1:取消xdebug部分的这两个选项 enter image description here
    • 步骤2:复制并粘贴您的项目目录到/xampp/htdocs/{your-project} enter image description here

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接