PhpStorm xdebug can#39;t find file when connection comes from docker container(当连接来自停靠容器时,PhpStorm xdebug找不到文件)
本文介绍了当连接来自停靠容器时,PhpStorm xdebug找不到文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试将我的Magento开发环境移到docker。我已经从this即可使用解决方案开始。除了xdebug之外,几乎所有内容都工作正常。
我已经根据this tutorial设置了PhpStorm,并且我已经正确地将我的本地项目目录映射到服务器部分的docker卷上。当我尝试开始调试时,调试器窗口中出现此消息
在本地找不到文件"/var/www/html/pub/index.php"。 要解决此问题,请通过环境变量PHP_IDE_CONFIG设置服务器名称,然后重新启动调试会话。
我已添加此
environment:
- PHP_IDE_CONFIG=serverName=Magetwo
到php部分中的docker-compose.yml
,但仍然是相同的错误。只有当我的项目位于主机上的相同目录(如容器卷中)时,调试才有效,但我希望有不同的目录。
我应该更改哪些内容才能强制xdebug工作?
推荐答案
尝试使用docker在PHPStorm上调试时也存在同样的问题。
您可以通过向nginx配置添加server_name
来解决此问题:
server_name _;
应设置为默认服务器名称_
。您还可以添加另一个服务器名称,从而导致PhpStorm添加一个新的PHP服务器(设置:PHP&>服务器),并将其用作Name
:server_name _ MyProject;
server {
listen 80;
### Add the following line to nginx config file ###
server_name _ AnotherServerNameForPhpStorm;
index index.php index.html;
error_log /var/log/nginx/error.log;
access_log /var/log/nginx/access.log;
root /var/www/public;
location ~ .php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+.php)(/.+)$;
fastcgi_pass app_bug:9000;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
include xdebug/remote.conf;
}
location / {
try_files $uri $uri/ /index.php?$query_string;
gzip_static on;
}
}
希望这能帮助某人仍然对我有同样的问题
这篇关于当连接来自停靠容器时,PhpStorm xdebug找不到文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:当连接来自停靠容器时,PhpStorm xdebug找不到文件
猜你喜欢
- 如何使用 Google API 在团队云端硬盘中创建文件夹? 2022-01-01
- PHP foreach() 与数组中的数组? 2022-01-01
- openssl_digest vs hash vs hash_hmac?盐与盐的区别HMAC? 2022-01-01
- 覆盖 Magento 社区模块控制器的问题 2022-01-01
- PHP - if 语句中的倒序 2021-01-01
- 使用 GD 和 libjpeg 支持编译 PHP 2022-01-01
- 如何从数据库中获取数据以在 laravel 中查看页面? 2022-01-01
- Oracle 即时客户端 DYLD_LIBRARY_PATH 错误 2022-01-01
- Laravel 5:Model.php 中的 MassAssignmentException 2021-01-01
- 如何在 Symfony2 中正确使用 webSockets 2021-01-01