我构建了一个基于 php:5.6-fpm-alpine
图像的图像,并运行了一个基于 symfony 的应用程序,因此我同时运行 cli 和基于 Web 的 php 脚本。
所以我通过以下方式在我正在运行的容器上生成了一个 shell:
docker exec -ti ^container_id^ /bin/sh
我在 shell 上导出了以下环境变量:
export PHP_IDE_CONFIG="serverName=0.0.0.0:5092"
export XDEBUG_CONFIG="idekey=PHPSTORM"
并且已按照以下链接中的说明设置了 IDE:
- Can't connect PhpStorm with xdebug with Docker
- How to setup Docker + PhpStorm + xdebug on Ubuntu 16.04
但是当我在 phpstorm 上启用 Xdebug 时,即使它正常调试,我也会收到以下错误消息:
你知道为什么会这样吗?
最佳答案
发生这种情况是因为 phpstorm 的 Servers
部分的名称与 PHP_IDE_CONFIG
环境变量中定义的名称不同,为了解决该问题,请按照以下步骤操作:
第 1 步:
按 Ctrl
+Alt
+S
或从菜单中访问 File -> Settings 进入服务器设置。
第 2 步: 然后在打开的窗口中转到设置 -> 语言和框架 -> 服务器。
第 3 步:
将 Name
设置为定义为:
export PHP_IDE_CONFIG="serverName=0.0.0.0:5092"
为了工作,它应该是 0.0.0.0:5092
如图所示:
关于php - Docker、PhpStorm 和 Xdebug : Can't find source position error,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48977304/