php 的ssh2扩展安装

想要在php程序中执行scp拷贝,之前想用system函数
system("scp /from/path/file user@des_host:/to/path/file"),但是始终失败,
但在命令行下直接执行scp /from/path/file user@des_host:/to/path/file 是OK的,
至今找不到原因,如果哪位知道原因,麻烦告知一下。
既然这个方法不行,就换吧,不能一棵树吊死啊。google来,google去,发现原来php里有
现成的函数:
http://us2.php.net/manual/en/book.ssh2.php
只是要装几个包。
方法如下:
http://us2.php.net/manual/en/ssh2.installation.php


首先要装OpenSSL。
因为自己OpenSSL已经装过了,所以直接第二步,下个libssh2直接安装。
我下的是libssh2-0.18,这个都没什么问题。
第三步要用pear安装php的ssh扩展,如果没装pear可以直接下载源码,自己编译。
http://pecl.php.net/package/ssh2

我下的ssh2-0.10.tgz,解压,编译:
tar -zxvf ssh2-0.10.tgz
[color=red]【注意源码有些问题,要修改。
把480行
#if LIBSSH2_APINO < 200412301450

#else
改为
#if (defined(LIBSSH2_APINO) && LIBSSH2_APINO < 200412301450)

#else

把1216行:
#if (LIBSSH2_APINO > 200503221619)
改为
#if (defined(LIBSSH2_APINO) && (LIBSSH2_APINO > 200503221619)) ||
(defined(LIBSSH2_VERSION_NUM) && LIBSSH2_VERSION_NUM >= 0×001000)
】[/color]

phpize && ./configure --with-ssh2 && make
编译好,到build文件夹中把ssh2.so cp 到自己的php extension dir中
在php.ini中加入 extension=ssh2.so
重启apache
ok
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值