PhpStorm调试器不在BreakPoints停止; 一直在等待xdebug _SESSION_

lag*_*lex 44 php xdebug phpstorm

更新的问题:PhpStorm | WebMatrix(IISExpress)| Xdebug.remote_port | - 哪个港口放在哪里?


我正在使用WebMatrix和IISExpress在我的Windows机器上运行localhost Web服务器.我已经安装了PHP和Xdebug,它们都在工作.

我有一个本地WordPress安装.

我现在正试图让PhpStorm使用Xdebug进行调试.

当我运行PhpStorm时,它会在浏览器中启动Web应用程序,并在浏览器中显示相关的调试参数.

IDE KEY匹配

IDE

xdebug.remote_port配置正确.(后来我发现这是错的,但没有错.它应该是9000端口)

xdebug.remote_port

但似乎Xdebug从未与PhpStorm沟通.PhpStorm继续监听,执行完全运行而不会在任何断点处停止.

PhpStorm PhpStorm

Cap*_*apy 43

这些行对于它的工作至关重要(在php.ini中):

zend_extension=/usr/lib/php/extensions/no-debug-non-zts-20121212/xdebug.so
xdebug.remote_autostart = 1 <-------- THIS
xdebug.remote_enable = 1 <----------- AND THIS
Run Code Online (Sandbox Code Playgroud)

没有这些行xdebug永远不会在phpstorm上工作;)

  • 实际上,使用`remote_autostart = 0`,XDebug正在寻找一个名为`XDEBUG_SESSION`的cookie.设置稍微复杂一些,但也适用(使用PHPStorm).为更简单的选项+1. (7认同)
  • 刚刚让我省去了拉头发的日子。完美运作! (2认同)
  • 这将我推向了正确的方向,除了 XDebug 3(2020 年 11 月)中的设置发生了变化,尽管想法是相同的:使用 `xdebug.mode=debug` 而不是 `xdebug.remote_enable=1` 和 `xdebug.start_with_request =yes`而不是`xdebug.remote_autostart=1`。完整的更改列表[此处](https://xdebug.org/docs/upgrade_guide) (2认同)

小智 34

尝试更改php.ini和IDE中的xdebug监听端口.

运行Mac优胜美地,对我来说,问题是,我用自制的安装,以下是采用php-fpm的,它使用出入口的导向9000在默认情况下(与Xdebug的默认端口冲突)......我的改变xdebug.remote_port,以9001和在改变Xdebug的端口phpstorm修复了这个问题,虽然我怀疑这个问题可能发生在任何IDE的任何人身上.我用Google搜索了一天的大部分时间并且没有看到这个解决方案(因为我认为它对于安装方法非常具体)..但我希望它可以帮助某人.

  • 这节省了我的一天.不是一天.4天我纠结于调试,问题是由自制软件安装引起的.我按照你的意见改变了港口和瞧!phpstorm在休息点停了,最后:) (8认同)

Rot*_*eti 20

花了我一个小时,直到我注意到这个按钮没有激活;)

"运行" - >"开始侦听PHP调试连接"

在此输入图像描述


Luc*_*nte 8

可能是防火墙。

第572天……还没睡没吃……但我终于找到了罪魁祸首:Windows Defender!

基本上,我有一个防火墙阻止 JetBrains IDE 支持 chrome 扩展通过默认的 127.0.0.1:63342 地址向 PhpStorm 发送数据。

- -编辑

第864天...同样的问题再次发生,这次是在Linux上...但我终于找到了罪魁祸首:Ubuntu防火墙!

说真的,几个月后,这种情况再次发生在我身上,使用的是Linux,而且又是防火墙。禁用防火墙解决了这个问题sudo ufw disable- 如果您关心防火墙并希望保持其启用状态,则必须深入研究为其创建某种白名单。


vli*_*o20 6

首先检查xdebug正在处理什么端口,你可以在你的php.ini下找到它xdebug.remote_port=9123.正如你在我的例子中看到它设置为9123.
现在打开PhpStorm进入php调试,看截图: 在此输入图像描述

在Xdebug下你会找到Debug端口,确保它的值与php.ini文件中的相同xdebug.remote_port(在我的例子中为9123).

希望能帮助到你


uni*_*com 5

对我来说,它正在改变这条线:

xdebug.remote_host = localhost到xdebug.remote_host = myComputerIP

(Mac用户:在终端运行ifconfig找到你的ip)

  • 因为我正在调试流浪者(访客盒)127.0.0.1没有做到这一点.;) (3认同)

小智 5

如果其他人遇到这个问题并且正在使用 Vagrant,这就是最终为我解决的问题:

xdebug.remote_host=10.0.2.2
Run Code Online (Sandbox Code Playgroud)

这需要是 Vagrant 盒子内本地计算机的 IP 地址,默认值为 10.0.2.2。如果您通过 ssh 登录 Vagrant 盒子,如果您想确认的话,它会显示您登录的 IP。

我知道这与 OP 的具体设置没有直接关系,但这篇文章出现在很多 xdebug / PhpStorm Google 搜索中,因此希望这可以帮助其他人。


lag*_*lex 2

中存在语法错误php.ini。有额外的"引号";冒号;

xdebug.remote_port