为什么在我尝试过的每个 XAMPP 安装中 xdebug 都会使 apache 崩溃?

2022-01-12 00:00:00 windows xampp crash apache xdebug

我在三台不同的计算机上安装了 Windows XAMPP 软件包,其中两台运行 Windows Vista 32 位(1 台 Ultimate/1 台 Home Premium),1 台运行 Windows Vista 64 Home Premium.

I've installed the Windows XAMPP package on three separate computers, 2 running Windows Vista 32 bit ( 1 Ultimate / 1 Home Premium ) and 1 running Windows Vista 64 Home Premium.

在 php.ini 中启用 xdebug 并重新启动 apache 后,查看默认的 XAMPP localhost 索引会导致 apache 每次都以相同的方式崩溃,并报告 'php_xdebug.dll' 作为故障模块名称.

After enabling xdebug in php.ini and restarting apache, viewing the default XAMPP localhost index causes apache to crash in the same way every time, reporting 'php_xdebug.dll' as the Fault Module Name.

这是来自 Windows Crash Reporter 的完整报告:

Here's the full report from the Windows Crash Reporter thing:

Problem signature:
Problem Event Name: APPCRASH
Application Name:   apache.exe
Application Version:    2.2.9.0
Application Timestamp:  4853f994
Fault Module Name:  php_xdebug.dll
Fault Module Version:   2.0.3.0
Fault Module Timestamp: 47fcd9b9
Exception Code: c0000005
Exception Offset:   00008493
OS Version: 6.0.6001.2.1.0.768.3
Locale ID:  1033
Additional Information 1:   a34a
Additional Information 2:   c9c5f4fd744690d388ab9d5b3eb051a7
Additional Information 3:   cb2e
Additional Information 4:   650bb5690556a17e911375b94d3e16f0

我试过用谷歌搜索这个问题,但没有找到任何解决方案,只报告了类似的错误.

I've tried Googling this issue but haven't found any resolution, only reports of similar errors.

我为 php_xdebug.dll 启用了扩展行,到目前为止似乎已经停止了崩溃.

I enabled the extension line for php_xdebug.dll and that seems to have stopped the crashing so far.

推荐答案

我正在使用 xDebug 在我的 Win7 机器上运行 XAMPP for Windows 1.7.1 版,它运行完美.

I'm running XAMPP for Windows Version 1.7.1 on my Win7 machine with xDebug and it works perfect.

检查您是否安装了 SP1,然后按照这些注意事项:

Check if you have SP1 installed, and then follow these notes:

  1. 找到包含implicit_flush的那一行,设置如下:

implicit_flush = 开启

找到名为 [Zend] 的部分,并通过在每行的开头放置一个分号(;")来注释掉所有的行.

Find the section called [Zend] and comment out all of the lines by putting a semi-colon (";") at the start of each line.

找到这一行:zend_extension = "c:xamppphpextphp_xdebug.dll"并取消注释.

Find the line: zend_extension = "c:xamppphpextphp_xdebug.dll" and uncomment it.

找到 [XDebug] 部分并取消注释所有行(第一行是实际注释除外).对于 Windows,它应该类似于下面的示例:

Find the [XDebug] section and uncomment all of the lines (except for the first line which is an actual comment). For Windows, it should look like the example below:

[XDebug]
;; Only Zend OR (!) XDebug
zend_extension_ts="C:xamppphpextphp_xdebug.dll"
xdebug.remote_enable=true
xdebug.remote_host=localhost
xdebug.remote_port=10000
xdebug.remote_handler=dbgp
xdebug.profiler_enable=1
xdebug.profiler_output_dir="C:xampp	mp"

相关文章