我已将 php 从 5.3.3 更新到 5.4.31。我有一个 Debian 6 Squeeze。
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php5/20100525/apc.so' - /usr/lib/php5/20100525/apc.so: cannot open shared object file: No such file or directory in Unknown on line 0
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php5/20100525/suhosin.so' - /usr/lib/php5/20100525/suhosin.so: cannot open shared object file: No such file or directory in Unknown on line 0
在安装过程中,系统询问我是否要保留当前的 php.ini 或放置新的。我说保留当前的。
现在,当我重新启动 Apache 时出现这 2 个错误。
我该怎么做才能解决这些问题?
答案1
如果您不打算使用 APC,那么可以安全地将其从 PHP 配置中删除。
首先,找到您的 php.ini 文件并编辑它。
在 php.ini 文件中找到“apc”,你应该找到如下一行:
extension=apc.so
您可以通过在前面添加分号来注释掉此行,例如
;extension=apc.so
如果您在 php.ini 文件中找不到“apc.so”引用,则它可能包含在单独的文件中。您可以通过在服务器上的所有文件中搜索字符串“apc.so”来找到它,它一定在某个地方!
只需注释掉该行然后重新启动 Apache。
答案2
从 PHP 5.5 开始,APC 不再与 PHP 兼容(这可能也适用于 5.4,我现在找不到具体文档)。但是 Zend OPCACHE 包含在内(在 5.5 中,无需安装),因此 APC 已从 PECL 中删除。请查看安装 Zend OPCACHE。http://php.net/manual/en/opcache.installation.php
根据您正在运行的内容,您可能不需要操作码缓存,但是 wordpress、drupal、joomla 等网站通常会从中受益。