我曾经使用Xdebug在PhpStorm中本地调试PHP代码,但最近它刚刚停止工作。启用侦听Xdebug连接时,我的PHP应用程序立即响应,响应为空,并且在Chrome和Firefox中看到ERR_EMPTY_RESPONSE。调试器可以正常工作,并且像往常一样在断点处停止执行。禁用监听后,应用程序将按预期运行。
项目正在本地Apache Web服务器上运行,但是我也明确指定了路径映射。
如何“调试”调试器以找出阻止Web服务器发出http响应的原因?
xdebug.ini:
zend_extension=xdebug.so
[xdebug]
xdebug.remote_enable=1
xdebug.remote_autostart=1
xdebug.remote_port=8888
xdebug.profiler_enable=0
xdebug.profiler_output_dir="/var/opt/profiler"
xdebug.profiler_enable_trigger=0
xdebug.trace_enable=0
xdebug.trace_enable_trigger=0
xdebug.trace_output_dir="/var/opt/trace"
xdebug.max_nesting_level="1000"
xdebug.remote_host=localhost
xdebug.remote_mode=req
xdebug.idekey=PHPSTORM
PhpStorm调试器配置:
答案 0 :(得分:1)
我在PHP 7.1.27,xdebug 2.7.0中也遇到了这个问题。在Web服务器上,每个调试请求的日志中都有一条消息“ zend_mm_heap已损坏”。
已通过升级到PHP 7.1.28和xdebug 2.7.1解决了该问题。 基于this,我认为唯一的xDebug升级至关重要。