远程调试路径映射

Remote debugging path mapping

我希望能够在 docker 容器内使用调试器,并且我设法将 laravel 的 /public/index.php 的入口点映射到容器内 nginx 服务器上的路径,断点在index.php 被击中,但 app/http/routes.php 中的默认路由“/”中的断点未被命中,尽管正在执行路由的代码。这是 laravel 5.1 默认文件夹结构。

index.php 的工作路径映射是 /var/www/laravel/public - C:\Users\username\Desktop\zemke2\public(分别为服务器路径 - 项目路径)

此处打印屏幕:

我需要帮助使“/”路由断点的映射工作。

经过一番琢磨,我终于弄明白了。这很简单。重点是您在服务器和本地映射 FOLDERS 并映射 ABSOLUTE FILESYSTEM PATHS。浏览器 url 是 IRRELEVANT,无论您如何 运行 您的代码。

包含您要在服务器上调试的一个或多个文件的文件夹到包含该文件的本地文件夹。

在我的例子中是:

    server path: /var/www/laravel/public - local path: C:\Users\username\Desktop\zemke2\public
    server path: /var/www/laravel/app/Http - local path: C:\Users\username\Desktop\zemke2\app\Http

Linux 路径区分大小写。检查 stop debugger on first line 也有助于调试此类问题。