我在debian 6.0.8中有几个服务器,php版本为5.3.28-1~dotdeb.0。
我已经在每个上做了一个apt-get安装libssh2-php。 当你制作一个php -v时,我在每个列表中都有openssl和ssh2。 之后我已经重新启动了apache。
但是当我使用ssh2_connect()调用运行php脚本时,它不会在2台服务器上运行,但它可以在另一台服务器上运行。
我有错误:“调用未定义的函数ssh2_connect()。”
我不明白,debian版和php版是一样的。 你能帮助我吗 ? 感谢。
答案 0 :(得分:1)
在像Debian和EL这样的打包发行版中,您可以单独打包PHP的“非核心”部分。在Debian风格中,您必须安装php5-ssh2包。
sudo apt-get install php5-ssh2
答案 1 :(得分:1)
我只使用phpseclib,一个纯PHP SSH实现。例如
<?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');
?>
phpseclib有a number of a advantages over libssh2。如果您愿意,也可以使用phpseclib来模拟libssh2函数。例如