无法在 XAMPP 和 Windows XP 上安装 Xdebug
Posted
技术标签:
【中文标题】无法在 XAMPP 和 Windows XP 上安装 Xdebug【英文标题】:Can't install Xdebug on XAMPP and Windows XP 【发布时间】:2013-07-02 05:02:04 【问题描述】:我知道,这个问题已经被问过好几次了,但答案并没有解决我的问题。
我在 Windows XP SP3 上运行 XAMPP 1.8.2 并且正在努力安装 XDebug。
我从网站下载了 XDebug。不幸的是,安装向导对我不起作用,我的 php 版本是 5.4.16,所以我选择了 PHP 5.4 VC9 TS (32 bit)
的文件。
我根据不同的教程配置了我的php.ini:
[XDebug]
zend_extension_ts = "D:\Stefan\xampp\php\ext\php_xdebug-2.2.3-5.4-vc9.dll"
xdebug.remote_enable = On
xdebug.remote_handler = "dbgp"
xdebug.remote_host = "127.0.0.1"
xdebug.remote_mode=req
xdebug.remote_port = 9000
xdebug.remote_autostart = 1
重新启动 apache 时,phpinfo()
中不会显示其他条目。我检查了没有其他调试或加速模块被激活,并且还尝试更改 Xdebug 端口,但没有任何效果。
Apache 和 Windows 错误日志不包含与此问题相关的任何条目。
有什么提示吗?
【问题讨论】:
你安装了线程安全版本的 PHP 吗? 是的。我的php.ini
说:Thread Safety enabled
为什么要下载 XDebug? XAMPP 应该带有它自己的 dll
是否加载了其他 Zend 扩展?
XAMPP 附带的 dll 不起作用(同样的问题),所以我尝试手动下载它。没有加载任何其他 zend_extensions。
【参考方案1】:
好的,同样的问题,但我解决了问题
Download it HERE , if you want BUT
Xampp 1.8.2 不再需要 Xdebug 因为,Xampp 1.8.2 有 Xdebug.dll !!!
看起来像这样:
zend_extension = "C:\xampp\php\ext\php_xdebug.dll"
zend_extension_ts = "C:\xampp\php\ext\php_xdebug-2.2.3-5.4-vc9.dll"
xdebug.profiler_append = 0
xdebug.profiler_enable = 1
xdebug.profiler_enable_trigger = 0
xdebug.profiler_output_dir = "C:\xampp\tmp"
xdebug.profiler_output_name = "cachegrind.out.%t-%s"
xdebug.remote_enable = 0
xdebug.remote_handler = "dbgp"
xdebug.remote_host = "127.0.0.1"
xdebug.trace_output_dir = "C:\xampp\tmp"
很抱歉我的英语不好......
【讨论】:
【参考方案2】:检查 .dll xdebug 文件的安全选项。如果您在文件的图标上看到小锁图标 - 除了您之外没有人可以使用此文件。在这种情况下,在文件属性的安全选项卡中添加用户组。
【讨论】:
【参考方案3】:XAMMP 附带的 XDebug.dll 中似乎存在错误。
从xdebug网站下载TS版本
并像这样配置
zend_extension = "D:\Stefan\xampp\php\ext\php_xdebug-2.2.3-5.4-vc9.dll"
xdebug.profiler_append = 0
xdebug.profiler_enable = 1
xdebug.profiler_enable_trigger = 0
xdebug.profiler_output_dir = "D:\Stefan\xampp\tmp"
xdebug.profiler_output_name = "cachegrind.out.%t-%s"
xdebug.remote_enable = 0
xdebug.remote_handler = "dbgp"
xdebug.remote_host = "127.0.0.1"
xdebug.trace_output_dir = "D:\Stefan\xampp\tmp"
【讨论】:
当我使用不带“ts”的zend_extension时,启动apache时出现以下错误:imgur.com/1dOKL4H 英文是“动态链接库php5ts.dll中找不到程序入口点“zend_unmangle_property_name_ex”” 试试 XAMPP 自带的 XDebug ddl 并使用 zend_extension。 更新了我的答案..应该可以解决问题! 您指定的版本 php_xdebug-2.2.3-5.4-vc9.dll 是唯一有效的版本。我尝试了其他变体(vc9 和 vc11、标准和 x86_64),它们要么在启动 Apache 时出错,要么在我尝试调试时在 NetBeans 中显示“加载失败”消息(它不会在断点处停止)。谢谢!!!【参考方案4】:这是混淆使用哪个php.ini的常见问题,看看apache使用哪个php.ini。您可能正在编辑错误的 ini 文件。
在phpinfo()
中寻找加载的配置文件
有时它会从
加载..\bin\apache\Apache#.#.#\bin\php.ini
代替
...\bin\php\php#.#.#\php.ini
【讨论】:
谢谢,我知道这个潜在的问题,并已对其进行了三重检查。我肯定在编辑正确的 ini 文件(并且没有其他文件)以上是关于无法在 XAMPP 和 Windows XP 上安装 Xdebug的主要内容,如果未能解决你的问题,请参考以下文章
警告:mail() [function.mail]:无法在“localhost”端口 25 连接到邮件服务器,请验证您的“SMTP”和“smtp_port”,Windows XP 的 XAMPP
在 Win XP 64 位上,无法连接到 XAMPP 下的本地 apache 安装。帮助!
XAMPP错误解决方案?我在我的 Windows XP 双启动机器上安装了它