我一直在尝试将PHP的SSH2库安装到运行CentOS 5和PHP 5.1.6的Web服务器上,并且能够成功安装所有依赖项,但在重新启动Web服务器后,我收到以下错误:< / p>
PHP警告:PHP启动:无法加载动态库'/usr/lib64/php/modules/ssh2.so' - libssh2.so.1:无法打开共享对象文件:无法在线显示此类文件或目录0
有没有人遇到过这个? ssh2.so文件存在于'/usr/lib64/php/modules/ssh2.so',并且具有与所有其他扩展名相同的文件权限(-rwxr-xr-x)。
由于
答案 0 :(得分:-1)
错误的关键是:
libssh2.so.1: cannot open shared object file: No such file or directory
您的ssh2.so文件找不到它。运行这个,你会明白我的意思:
ldd /usr/lib64/php/modules/ssh2.so
试试这个:
updatedb
locate libssh2.so.1
如果找到,您可能需要在/ usr / lib64 /或其他内容中创建符号链接。
如果没有找到它,快速谷歌搜索会在centos5上将其作为libssh2的命中:
http://centos.karan.org/el5/extras/testing/x86_64/RPMS/libssh2-0.18-10.el5.kb.x86_64.rpm
安装,重新启动apache,然后再试一次。
答案 1 :(得分:-1)
也许phpseclib, a pure PHP SSH implementation,对你有用吗?一个例子:
<?php
include('Net/SSH2.php');
$ssh = new Net_SSH2('www.domain.tld');
if (!$ssh->login('username', 'password')) {
exit('Login Failed');
}
echo $ssh->exec('pwd');
echo $ssh->exec('ls -la');
?>