我在 Windows XP 机器上的 EasyPHP 中的 PHP 5.3.9 安装上运行simpleSamlPHP 1.9 。SimpleSamlPHP 充当 SAML 身份提供者,在本地 MySQL 数据库中获取用户。
我的问题是,当请求对此 IdP 进行身份验证时,Apache 崩溃并抛出“违规访问”错误,即 segfault。问题与此线程类似,只是子进程以状态 0 退出(但这不是 PHP 关于退出代码的 Windows 特定功能吗?)。
常见的修复方法是在 C:\Windows\system32 中复制 libmysql.dll 和 php5apache2.dll,但没有帮助。
运行 VC++6 即时调试器不会给我任何关于哪个模块被定罪的信息:'(
我试图尽可能多地禁用 PHP 扩展。SimpleSamlPHP 需要 openSSL 和 PDO/MySQL,因此我只启用了这两个,并且无论如何都会发生崩溃。我单独检查了使用 openSSL 和 MySQL 工作正常。
最后,我必须确定机器托管了 3 个 PHP 实例,包括 EasyPHP 中的 2 个(2 个单独安装),但当崩溃发生时,只有相关实例处于活动状态。
有什么线索吗?干杯