Linux下PHP安装ssh2扩展

10 篇文章 1 订阅
9 篇文章 0 订阅

新部署了一套服务器,在手动执行队列任务的时候,出现如下错误:

PHP Startup: Unable to load dynamic library 'ssh2.so'

顾名思义:缺少ssh2扩展,好开始安装!

1.编译安装 libssh2

# cd /usr/local/src
# wget http://www.libssh2.org/download/libssh2-1.4.2.tar.gz
# tar -zxvf libssh2-1.4.2.tar.gz
# cd libssh2-1.4.2
# ./configure --prefix=/usr/local/libssh2
# make && make install

2.编译安装 ssh2

# cd /usr/local/src/
# wget http://pecl.php.net/get/ssh2-0.13.tgz
# tar xvf ssh2-0.13.tgz 
# cd ssh2-0.13
# phpize                ##没有的话yum install php-devel ubuntu apt-get install php7.0-dev
# ./configure --prefix=/usr/local/ssh2 --with-ssh2=/usr/local/libssh2 --with-php-config=/usr/bin/php-config  ##此处为自身环境下php配置文件,可通过find / -name php-config 进行查找
# make

注:我在执行这里make的时候,出现了如下错误

查了资料才发现是因为我的PHP版本过高,我的版本是PHP7.2,于是乎将ssh2的版本换成1.1.2即:

# cd /usr/local/src/
# wget http://pecl.php.net/get/ssh2-1.1.2.tgz
# tar xvf ssh2-1.1.2.tgz 
# cd ssh2-1.1.2
# phpize                ##没有的话yum install php-devel ubuntu apt-get install php7.0-dev
# ./configure --prefix=/usr/local/ssh2 --with-ssh2=/usr/local/libssh2 --with-php-config=/usr/bin/php-config  ##此处为自身环境下php配置文件,可通过find / -name php-config 进行查找
# make

完事会告诉你扩展的位置,如下图:


在该目录下会出现一个:ssh2.so正是我们想要的扩展

3.拷贝 ssh2.so

# cp /usr/local/ssh2-1.1.2/modules/ssh2.so /usr/lib64/php/modules/

4.修改 php 配置文件

# find / -name php.ini    ##查找php.ini文件的位置
# echo "extension=ssh2.so" >> /etc/php.ini

5.查看是否成功

# php -m | grep ssh2
ssh2  ##出现这个证明成功了

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值