Web 容器中项目的路径与主机上的路径不同

时间:2021-03-17 12:50:16

标签: drupal ddev

刚从完整的虚拟机来到 ddev 并喜欢它。感谢您开发出如此出色的工具:-)

设置是 WSL 上的 ddev,上面是 Ubuntu。 Drupal 8 和 9。

我现在在 Drupal9 中遇到私人文件的奇怪问题。经过一些调试,我发现了以下内容:

PHP realpath() 返回:

'/home/name/' for realpath('/home/name')

false for realpath('/home/name/drupal9')

对于 /home/name/xxx 等任何其他目录也是如此。

我不知道从哪里开始解决这个问题。

有什么建议吗?

非常感谢 克里斯托夫

1 个答案:

答案 0 :(得分:1)

DDEV-Local 使用 docker,您可以将 docker 容器视为具有单独命名的文件系统的独立机器。

所以你在 web 容器中的项目总是挂载在 /var/www/html。即使您的代码可能位于主机上的 /home/name/something(在本例中为 WSL2),它也是容器内的 /var/www/html。因此,您可能需要对项目内部的某些内容使用 realpath(),正如 Jonas Eberle 在评论中指出的那样。

希望有帮助。如果没有,让我们继续对话。