php - 如何连接 PhpStorm 和 Xdebug

标签 php phpstorm xdebug

我希望这里有人可以帮助我解决我的问题:

我最近进入了我的第一个 PHP 项目,需要设置调试。我知道很多人在我面前遇到过同样的问题,但我很难找到解决方案。

我需要使用 Xdebug 设置 PhpStorm,所有设置仍然无法正常工作,当我开始我的调试 session 时,我卡在了这里,没有更多信息:

enter image description here

这是我的项目设置:

带有 Xdebug 的 Docker Web 应用程序:0.0.0.0:80->80/tcp,0.0.0.0:443->443/tcp

PhpStorm PHP 调试设置:

enter image description here enter image description here enter image description here

来自 phpinfo() 的 Xdebug 设置:

enter image description here

在 PhpStorm 中监听调试连接已开启,启动调试 session 通过 GET 创建 session :https://localhost/?XDEBUG_SESSION_START=16957 但我的所有断点都被忽略了。

为了获取更多信息,我运行了 netstat:

enter image description here

谁能告诉我这里缺少什么?

非常感谢您!

最佳答案

  1. 不要使用运行/调试配置进行网络调试,这会适得其反。您可以使用 zero-configuration debugging 直接从浏览器启动调试连接.
  2. 禁用xdebug.remote_connect_back,弊大于利,尤其是对于 Docker。
  3. 当您使用 Docker 时,
  4. xdebug.remote_host 不应该是 localhost,这样,容器会尝试将调试数据发送给自己而不是主机机器。看来您使用的是 macOS 和适用于 Mac 的 Docker,在这种情况下,正确的主机名应该是 host.docker.internal
  5. 如果您从浏览器启动调试 session 后 PhpStorm 仍然无法捕获连接,我们将需要按照@LazyOne 的建议查看 Xdebug 日志。

在 PhpStorm 基础知识中展示 Docker 的博客文章:https://blog.jetbrains.com/phpstorm/2018/08/quickstart-with-docker-in-phpstorm/

关于php - 如何连接 PhpStorm 和 Xdebug,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62203607/

相关文章:

javascript - jquery如何发布到php,同步

php - 根据正则表达式验证字符串

phpstorm - 我如何配置 PhpStorm 以便它识别嵌入 php 的 javascript

java - Docker 容器中的 Apache Karaf 4 调试

php - 使用远程服务器设置 Xdebug 和 PHPStorm

php - PHP MySQL 上的多个条目

php - 在 Laravel 中保存表单数据的正确方法是什么(使用注入(inject)模型)?

javascript - 关于 PhpStorm 中的可选链接和 Nullish 合并 JavaScript 运算符支持的问题

php - 防止 PhpStorm 中变量的错误报告

php - Netbeans Xdebug Vagrant 连接超时