运行 fcgid 时未加载 PHP 扩展

运行 fcgid 时未加载 PHP 扩展

我需要使用libpuzzlePHP 的扩展,但到目前为止,我无法让它在 中运行fcgid。我已经安装了它(不幸的是,由于依赖性问题,我手动安装了它),并将 添加extension=libpuzzle.so到我的 中/etc/php.ini。遗憾的是,扩展只会为 PHP-cli 加载,而不会为从 运行的 PHP 加载fcgid。我试过:

  1. service httpd restart安装并修改后再进行操作php.ini,无济于事。
  2. 检查phpinfo()它是否已加载,结果发现未通过 加载fcgid,但通过 CLI 加载。通过 安装的扩展yum(如imagick)可正常加载。
  3. dl()然而,在运行时加载它看起来像“该函数已从 PHP 5.3 中的一些 SAPI 中删除。”

我不知所措。我不想因为这个扩展而放弃 FastCGI。我无法从存储库安装扩展,因为其中一个依赖项(可能是 PHP)与另一个存储库的预期版本不同(并且我也无法降级它,因为代码依赖于它)。请帮忙。

我正在运行带有 PHP 5.4.17 的 CentOS 6。

答案1

考虑到我的服务器上正在进行的 PHP 相关任务的数量,我通常对 Apache/mod_fcgid 使用不同的 php.ini 文件...

FcgidWrapper "/usr/bin/php-cgi -c /etc/httpd/conf/php.ini" .php

这样,关于哪个 ini 文件已被解析的所有困惑就都消除了。

答案2

显然,fcgid配置为使用php.ini位于用户目录中的文件,而不是 中的文件/etc。添加extension=libpuzzle.so到该配置文件已解决问题。因此,如果您遇到类似问题,这可能是另一件需要注意的事情。

相关内容