windows & centos7.6下安裝ssh2的php7.3擴展(不同對應版本)

場景:php爬蟲獲取的數據生成文件sftp上傳到線上服務器

一、windows 安裝(PHP7.2)

1、先查看自己的php版本信息找到對應的ssh2擴展

php版本

ssh2擴展鏈接地址:https://windows.php.net/downloads/pecl/releases/ssh2/1.1.2/
對應的ssh2版本
2、下載、解壓、把擴展文件拖到php目錄的ext目錄下,找到php.ini文件把擴展添加就OK啦
擴展文件拖入ext擴展文件夾中
添加擴展
!!重啓apache!!
查看phpinfo
已添加ssh2擴展

二、linux安裝(PHP7.3.3)

php7.3
**去找對應版本的ssh2:https://pecl.php.net/package/ssh2 **(這個沒用不是最新的!!!!)

Ps:先安裝 libssh2 在安裝 SS2

[root@localhost ~]# wget http://www.libssh2.org/download/libssh2-1.4.2.tar.gz
[root@localhost ~]# tar -zxvf libssh2-1.4.2.tar.gz
[root@localhost ~]# cd libssh2-1.4.2/
[root@localhost libssh2-1.4.2]# ./configure
[root@localhost libssh2-1.4.2]# make && make install

Ps:從git上那最新的源碼包

[root@localhost ~]# git clone https://git.php.net/repository/pecl/networking/ssh2.git
[root@localhost ~]# cd ssh2/
[root@localhost ssh2]# **你的PHP目錄**/bin/phpize
[root@localhost ssh2]# ./configure --with-php-config=**你的PHP目錄**/bin/php-config
[root@localhost ssh2]# make && make install

修改php.ini文件加入

extension=ssh2.so

重啓php-fpm

php -m

php -m
OK

測試一下

<?php
    $user="root";//遠程用戶名
    $pass="123123.";//遠程密碼
    $connection=ssh2_connect('192.168.0.1',22);
    ssh2_auth_password($connection,$user,$pass);
    $cmd="ps aux";//命令
    $ret=ssh2_exec($connection,$cmd);
    stream_set_blocking($ret, true);
    echo (stream_get_contents($ret));
    echo "<br>";
    phpinfo();

完美
完成!!!

PHP sftp上傳實例:https://blog.csdn.net/weixin_42260789/article/details/90755213

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章