我在Docker容器中运行了一个CakePHP应用程序。 htdocs 文件夹映射到我的主机中的文件夹,我用它来使用Eclipse进行开发。我对Eclipse感到满意,但我想看看PHPStorm。
我遇到的问题是我无法使用PHPStorm调试我的项目。我花了几个小时尝试不同的配置和阅读文档,但没有一个工作。 PHPStorm捕获XDebug请求,但随后它要求我将请求映射到我的项目的特定文件(index.php)。我是否必须将每个请求与文件匹配?我想没有,因为CakePHP路由不能这样工作......我不得不在Eclipse中做任何关于这一点的事情,并且我已经完成了一个非常简单的配置。
这是PHPStorm使用ZeroConf捕获请求,并在删除所有服务器之后。
我映射选定的一个,即调度员。 test.cuvibox.com 映射到/etc/host
到127.0.0.1,我的意思是,docker正在我的笔记本电脑上运行,并暴露了我使用该URL访问的Web服务器。在此之后,因为我在第一行强制中断... 它停止并且调试会话开始。
我在CakePHP控制器上设置断点,但是它有错误。文件路径未映射。这就是问题所在。
如上所述,在映射index.php之后,这是使用zero-conf创建的服务器配置。
我已将项目文件夹cuvibox
映射到远程服务器完整路径/app/cuvibox
。断点中的标记更改为OK,但无论如何调试会话在第一行停止,并忽略我的断点。
注意:经过大量测试后,我已将XDebug移至9050端口,但这不是问题所在。
答案 0 :(得分:0)
我将断点放在 AccountsController 中,但我正在访问 EmployeesController 的URL。现在我让它工作,没有更多的事情可以将项目本地主目录的路径映射到远程服务器中的路径。现在它在断点处停止,但也在调度程序脚本的第一行停止。我已取消选中停在第一行选项,但我会尝试自己解决这个问题。
感谢@LazyOne并为此辩解...希望这对某人有用......如果它不起作用,请仔细检查您正在测试的断点是否应该执行:)
编辑:解决第一行问题的中断,取消选中“运行”菜单中的相应选项。