2

我一直在尝试在我的 CentOS 5.6 x64 服务器上安装 php 的 SSH 2 扩展。我从头开始启动服务器,这是我采取的步骤

  1. 安装和配置 APF
  2. 安装阿帕奇
  3. 安装php
  4. 安装mysql
  5. 添加 epel 存储库
  6. 安装 php-pear 这样我就可以使用 pecl
  7. 运行 yum install libssh2-devel
  8. 运行 pecl install ssh2-beta
  9. echo extension=ssh2.so>>/etc/php.ini (里面有一些额外的东西,比如安装 phpMyadmin 和 wordpress)

在此之后,我运行 php -m 来查看 php 模块并且 ssh2 未列出。我一直在寻找教程并找到了一些,但据我所知,我已经正确地完成了所有操作。谁能看到我哪里出错了。我可以提供您可能需要的任何配置文件。我也听说过 phpseclib,想知道这是否是一条更容易/更好的路线?任何帮助将不胜感激!

4

3 回答 3

3

您也许可以尝试phpseclib,一个纯 PHP SFTP 实现,而不是。例如。

<?php
include('Net/SFTP.php');

$sftp = new Net_SFTP('www.domain.tld');
if (!$sftp->login('username', 'password')) {
    exit('Login Failed');
}

echo $sftp->pwd() . "\r\n";
$sftp->put('filename.ext', 'hello, world!');
print_r($sftp->nlist());
?>
于 2012-03-27T12:10:50.573 回答
2

确保 /etc/php.ini 被实际使用。检查 php --info 输出以查看使用的 ini 文件

至少在 debian 上,路径是 /etc/php5/cli/php.ini

于 2012-03-27T08:39:51.437 回答
0

也许没有区别,但如果还不是这样,请尝试:

extension="ssh2.so"
于 2012-03-27T08:47:50.593 回答