PhpStorm上的调试卡住了

PhpStorm上的调试卡住了,php,phpstorm,xdebug,Php,Phpstorm,Xdebug,调试不再在我的任何PhpStorm项目上工作,当我开始侦听传入连接时,脚本将被阻止,直到我停止侦听连接为止,即使我的代码上没有断点。当我在第一行设置断点时(其他行不起作用),脚本确实停止了,但当我告诉他转到下一行时,它会再次阻塞(即使使用最简单的代码) 我试着检查调试配置一切正常(我使用了PhpStorm中的验证器),路径映射也正常,上周一切正常,我没有做任何更改,所以 以下是我在php.ini上的配置: xdebug.remote_autostart=1 xdebug.remote_enabl

调试不再在我的任何PhpStorm项目上工作,当我开始侦听传入连接时,脚本将被阻止,直到我停止侦听连接为止,即使我的代码上没有断点。当我在第一行设置断点时(其他行不起作用),脚本确实停止了,但当我告诉他转到下一行时,它会再次阻塞(即使使用最简单的代码)

我试着检查调试配置一切正常(我使用了PhpStorm中的验证器),路径映射也正常,上周一切正常,我没有做任何更改,所以

以下是我在php.ini上的配置:

xdebug.remote_autostart=1
xdebug.remote_enable=1
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000
xdebug.remote_log=[path]/xdebug.log
xdebug.idekey=PHPSTORM
下面是我的xdebug.log的一些部分,当我在第一行上放置一个断点,然后执行一步:

[4605] Log opened at 2019-03-12 14:13:50
[4605] I: Connecting to configured address/port: 127.0.0.1:9000.
[4605] I: Connected to client. :-)
[...]
[4605] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="context_get" transaction_id="19" context="1"><property name="$_COOKIE" fullname="$_COOKIE" type="array" [...] </property></response>
[...]
[4605] <- step_over -i 21
[4605] -> <response xmlns="urn:debugger_protocol_v1" xmlns:xdebug="https://xdebug.org/dbgp/xdebug" command="step_over" transaction_id="21" status="break" reason="ok"><xdebug:message filename="file:///[path]" lineno="4"></xdebug:message></response>
[4605]
我的php版本:

PhpStorm 2018.1
Build #PS-181.4203.565, built on March 28, 2018
JRE: 1.8.0_152-release-1136-b20 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Linux 4.4.0-102-generic
PHP 7.1.27-1+ubuntu16.04.1+deb.sury.org+1 (cli) (built: Mar  7 2019 20:02:03) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.1.27-1+ubuntu16.04.1+deb.sury.org+1, Copyright (c) 1999-2018, by Zend Technologies
    with Xdebug v2.7.0, Copyright (c) 2002-2019, by Derick Rethans

你知道什么是变形吗?(看来我的php版本是上周创建的,可能是链接的…

今天早上我遇到了同样的问题。我相信Xdebug的一个最新更新(6天前正式更新了?)可能破坏了PHP7.1.x的构建。我卸载了当前的xdebug版本,并使用了apt缓存中本地的缓存版本。我认为LazyOne可能走上了正确的道路,Xdebug 2.6.1是我们需要的版本

这里提供的缓存包(在ubuntu上):
/var/cache/apt/archives/

xdebug的列表和grepped-其中列出了包含2.6.1的较旧的缓存包

cd /var/cache/apt/archives/

ll | grep xdebug

并使用
sudo dpkg-i packagename安装了较旧的软件包,其中packagename是我缓存的早期版本。

我找到了答案,这是phpstorm 2018.1和Xdebug 2.7.0之间的不兼容,正如Xdebug错误报告中指出的:


我将phpstorm升级到2018.3版,现在一切都很好。

我不知道phpstorm,但在Eclipse中,每次我使用内置的编写器时,它都会弄乱我的构建路径,这会弄乱自动完成。1)可能是路径映射问题(特别是涉及符号链接的情况下)2)您使用的是PHP7.1。。因此,尝试将Xdebug降级到2.6.x。Xdebug或您的PhpStorm版本可能会出现问题3)尝试将IDE升级到最新的stable 2018.3.x甚至2019.1 EAP版本。请参阅中的评论,问题确实是xdebug 2.7.0(或phpstorm 2018.1),我升级到了phpstorm 2018.3,它修复了xdebug问题,现在可以工作了