如何配置PhpStorm远程Xdebug路径映射

时间:2017-04-18 08:49:43

标签: php phpstorm xdebug

我有运行我的应用程序的setup和docker机器。在此docker机器中,xdebug已启用这些xdebug.ini设置。

zend_extension=/usr/local/lib/php/extensions/no-debug-non-zts-20151012/xdebug.so
xdebug.remote_enable=on
xdebug.remote_enable=1
xdebug.remote_port=9000
xdebug.remote_host=10.5.0.1

我的本​​地计算机IP是10.5.0.1

当我尝试在命令行上运行我的应用程序时,它会连接回PhpStorm调试器。但由于没有路径映射,它停在脚本的第一行,断点不起作用。断点光标不可见,我无法通过F8键跟踪代码。

此外,它必须显示某种路径映射错误Debugger-> Variables窗口,但它不会显示任何错误。

如何解决这个问题?

4 个答案:

答案 0 :(得分:2)

我可以解决这个问题,如果没有配置serverName,PhpStorm无法处理。

怎么做:

1。设置环境变量:

export XDEBUG_CONFIG="idekey=PHPSTORM"
export PHP_IDE_CONFIG="serverName=web_server_cli"

2。该服务器名的设置路径映射:

转到Settings > Languages & Frameworks > PHP并创建一个主机名为web_server_cli

的服务器

答案 1 :(得分:1)

设置>语言和框架> php>服务器 添加您的服务器,并添加您的路径映射! 一个例子是C:\ Sites \ mysite映射到远程/ var / www / mysite或类似的

答案 2 :(得分:1)

从您的评论到@ delboy1978uk的回答,看起来您想调试从命令行运行的PHP脚本。为了有效地调试它,然后通过“PHP远程应用程序”运行配置(PHPStorm将假设您通过浏览器运行)调试它,您将需要:

  1. 创建一个“PHP脚本”运行配置,其中包含运行CLI应用程序所需的参数。
  2. 设置Remote CLI PHP解释器(我通过IDEA运行,所以对我来说,它位于Settings > Languages & Frameworks > PHP > CLI Interpreter,YMMV)并为其提供用于连接到您的流浪盒的SSH凭据
  3. 通过调试模式下的运行配置启动脚本。
  4. 如果所有设置都正确,您的CLI脚本将启动并正确使用断点。

答案 3 :(得分:1)

您需要在“设置>语言和框架> PHP>服务器”中设置“服务器”配置,将服务器上显示的路径映射到项目中的路径。

通常,您可以在“主机”中输入URL并将“端口”设置为HTTP端口,例如对于CLI脚本,此处放置的信息将基于您与运行CLI脚本的服务器的连接。例如,如果您在标准SSH端口(22)上SSH到192.168.42.42,则应输入“Host:192.168.42.42”和“Port:22”。

要了解您需要设置的详细信息,请进入“设置>语言和框架> PHP>调试”,启用“未指定路径映射时在第一行强制中断”,并确保“通过未注册的服务器配置忽略外部连接“ not 勾选。然后单击工具栏中的“侦听调试连接”,并运行脚本;应弹出一个对话框,显示“服务器名称:”和“服务器端口:”它正在尝试匹配,以及确认远程文件路径。单击该对话框上的“忽略”,设置服务器映射,然后重试,您应该获得正确的调试会话。

相关问题