在我的服务器(新启动的)上,当我尝试升级 MediaWiki 时,出现了以下错误。
php:加载共享库时出错:libssl.so.0.9.8:无法打开共享对象文件:没有此文件或目录
但是当我检查服务器时,我可以找到 libssl.so
183~# cd /pkg/products/httpd/httpd_2.2.19a_RH5_64/php/lib/ 183lib# ls
-la 总计 72556 drwxr-xr-x 3 root root 4096 9 月 16 日 15:43 . drwxr-xr-x 6 root root 4096 9 月 16 日 11:37 ..
-rw-r--r-- 1 root root 52439406 8月18日 08:31 libclntsh.so.11.1
-rw-r--r-- 1 root root 1786841 8月18日 09:06 libcrypto.so.0.9.8
-rw-r--r-- 1 root root 0 8月18日 08:26 libmysqlclient.so
-rw-r--r-- 1 root root 5264820 8月18日 08:26 libmysqlclient.so.16
-rw-r--r-- 1 root root 5264820 8月18日 08:26 libmysqlclient.so.16.0.0
-rw-r--r-- 1 root root 7898628 8月18日 08:32 libnnz11.so
-rw-r--r-- 1 root root 539497 8月18日 09:03 libpng14.so.14
-rw-r--r-- 1 root root 539497 8月18日 09:03 libpng14.so.14.4.0
-rw-r--r-- 1 root root 365454 8月18日 09:05 libssl.so.0.9.8 drwxr-xr-x 4 root root 4096 9月16日 11:37 php
183 lib# pwd /pkg/products/httpd/httpd_2.2.19a_RH5_64/php/lib
服务器中运行的是 PHP 5.3.6 (cli) (构建于:2011年5月9日 11:39:53) 版本。
答案1
看起来您已将库安装在非标准位置。
如果是这种情况,可能是因为 php 根本不知道在哪里寻找所需的库。如果您从命令行运行 php,请尝试在启动 php 之前将 LD_LIBRARY_PATH 环境变量设置为该路径。例如在 bash 中:
export LD_LIBRARY_PATH=/pkg/products/httpd/httpd_2.2.19a_RH5_64/php/lib
如果此方法有效,您可以将该路径添加到系统配置中。我不知道其他发行版,但 Debian 将库路径保存在文件 /etc/ld.so.conf 或目录 /etc/ld.so.conf.d/ 中。您可能可以在 /etc 文件夹中找到类似的文件