【问题标题】:Setting up VSCode with xdebug: pathMapping使用 xdebug 设置 VSCode:pathMapping
【发布时间】:2018-03-30 23:54:52
【问题描述】:

我正在尝试在 VSCode 中设置调试,但遇到了一些挑战。我输入了 localSourceRoot 的路径,但 Intellisense 告诉我它已被弃用,我应该改用 pathMapping。

我是新手,不知道如何正确设置。如果有人可以向我解释 pathMapping 要求的变量和/或属性,我将永远欠你的债。

我的系统信息如下: PHP版本:5.524 xdebug 版本:2.2.5 操作系统视窗 8.1 使用桌面服务器版本:3.8.5

我检查了 phpinfo(),它在文件中显示了 Xdebug,所以我知道它已安装。 launch.json 文件非常基本,包含端口 9000 和所有这些。我只需要完成那个该死的 pathMapping 事情。

感谢所有帮助。

【问题讨论】:

    标签: visual-studio-code xdebug vscode-settings


    【解决方案1】:

    我猜你正在使用 PHP 调试扩展?

    https://github.com/felixfbecker/vscode-php-debug

    README.md 内容如下:

    远程主机调试

    要在远程主机上调试正在运行的应用程序,您需要告诉 XDebug 连接到与 localhost 不同的 IP。这可以通过将 xdebug.remote_host 设置为您的 IP 或通过设置 xdebug.remote_connect_back = 1 来使 XDebug 始终连接回发出 Web 请求的机器来完成。后者是唯一支持多个用户调试同一服务器并且对 Web 项目“正常工作”的设置。同样,请参阅有关该主题的 XDebug 文档以获取更多信息。

    要使 VS Code 将服务器上的文件映射到本地计算机上的正确文件,您必须在 launch.json 中设置 pathMappings 设置。示例:

    // server -> local
    "pathMappings": {
      "/var/www/html": "${workspaceRoot}/www",
      "/app": "${workspaceRoot}/app"
    }
    

    还请注意,设置任何 CLI 调试选项都不适用于远程主机调试,因为脚本总是在本地启动。如果要在远程主机上调试 CLI 脚本,则需要从命令行手动启动它。

    【讨论】:

    • 感谢 dethegeek。这是最有帮助的。 :)
    • 嗨,不客气!如果我的回答解决了您的问题,您可以将我的回答标记为已批准的解决方案!
    • 我是否只需单击答案左上角的复选标记?
    【解决方案2】:

    因此,这既是对我自己的参考,也是对可能觉得这很有帮助的其他人的参考。我正在使用 xdebug 和 drupalvm 运行 VSCODE,在 php.ini 中设置以下内容后,以下内容对我有用

    php_xdebug_idekey: VSCODE
    
    {
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
    
        {
            "name": "Listen for XDebug",
            "type": "php",
            "request": "launch",
            "port": 9000,
            "pathMappings": {
                "/var/www/drupalvm/drupal": "${workspaceRoot}/drupal",
              },
            "log": true
        },
        {
            "name": "Launch currently open script",
            "type": "php",
            "request": "launch",
            "program": "${file}",
            "cwd": "${fileDirname}",
            "port": 9000
        }
    ]
    

    }

    【讨论】:

      猜你喜欢
      • 2013-07-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多