我一直在与这个烦人的问题作斗争很长一段时间了,它困扰着我很多,我找不到任何解决方法。
当我对我的error_log
文件使用"tail -f"来检查我的网络服务器上的错误时,一个特定的错误一直在弹出,每个访问者和页面刷新都会产生此问题。
我一直在谷歌上搜索和搜索 堆栈溢出一段时间,但与问题没有直接关系。
因此,抛出的错误如下所示:
[2012 年 8 月 17 日星期五 00:16:23] [错误] [客户端 xx.xx.xx.xx] PHP 警告:PHP 启动:无法加载动态库 '/usr/lib/php5/20090626/openssl.dll' -/usr/lib/php5/20090626/openssl.dll: 无法打开共享对象文件: 第 0 行未知中没有此类文件或目录,引用者: http://mysite.dk/
我能做什么?
我试图删除OpenSSL,然后重新安装它,但没有运气。我尝试升级每个与PHP相关的软件包,但仍然不起作用。
grep -ir ssl /etc/php*
给:
/etc/php5/cli/conf.d/zend_extensions_psa.ini:extension=openssl.dll
/etc/php5/apache2/conf.d/zend_extensions_psa.ini:extension=openssl.dll
/etc/php5/apache2/php.ini.saved_by_psa.08.03;20:24:;extension=openssl.dll ; moved to conf.d/zend_extensions_psa.ini by Plesk
/etc/php5/apache2/php.ini:;extension=openssl.dll ; moved to conf.d/zend_extensions_psa.ini by Plesk
/etc/php5/conf.d/zend_extensions_psa.ini:extension=openssl.dll
/etc/php5/cgi/conf.d/zend_extensions_psa.ini:extension=openssl.dll
所以你有四个zend_extensions_psa.ini
副本,所有副本都在尝试加载这个不存在的文件。全部编辑,删除或注释掉提及openssl.dll
的行,一切都应该很好。
Debian 软件包管理系统非常尊重您对配置文件的修改。升级或重新安装软件包时,它不会撤消它们,除非您使用 dpkg --purge
删除软件包或使用 --force-confnew
安装新软件包。
可能是
你的PHP配置中有这样的东西(php.ini
也许):
extension_dir=/usr/lib/php5/20090626/
然后
extension=openssl.dll
它可能会导致问题,因为在给定路径中没有这样的文件。这可能是由手动复制扩展和/或不同的扩展安装程序引起的。