windows10 中安装php7.3.4的ssh2插件(附带linux中配置ssh2)

windows10 中安装php7.3.4的ssh2插件附带linux中配置ssh2

问题描述:在composer 安装项目的composer.json组件报错如下:

Root composer.json requires PHP extension ext-ssh2 * but it is missing from your system. Install or enable PHP's ssh2 extension.

解决思路:

(1)首先在本项目的访问入口,增加phpinfo.php文件,内容"<?php phpinfo();",通过浏览器访问该页面,如下图所示:(需要找对应红框里的文件格式去下载扩展文件)

(2)网上下载对应的扩展文件,下载地址https://windows.php.net/downloads/pecl/snaps/ssh2/1.2-dev/,

具体地址来源:https://windows.php.net/download/找到PECL的位置(PECL 的全称是 The PHP Extension Community Library ,是一个开放的并通过 PEAR(PHP Extension and Application Repository,PHP 扩展和应用仓库)打包格式来打包安装的 PHP扩展库仓库。)

(3)下载完对应的扩展文件,将文件拷贝到 php7.3.4/ext下,并修改php.ini文件,其内容中追加extension=ssh2,重启apache即可 我这里下载的是:php_ssh2-1.2-dev-7.3-ts-vc15-x64.zip

(4)刷新第一步浏览器的phpinfo页面,展示如下即安装成功。

追加关于Linux中安装php7.3的 php_ssh2扩展

先安装 libssh2 再安装 SSH2

1、安装libssh2

(1)下载所需要的插件 wget http://www.libssh2.org/download/libssh2-1.4.2.tar.gz

(2)直接configure(configure是一个shell脚本,它可以自动设定源程序以符合各种不同平台上Unix系统的特性,并且根据系统叁数及环境产生合适的Makefile文件或是C的头文件(header file),让源程序可以很方便地在这些不同的平台上被编译连接)

./configure --prefix=/usr/local/php738/lib/libssh2

结果:

  version:          1.4.2
  Host type:        x86_64-unknown-linux-gnu
  Install prefix:   /usr/local/php738/lib/libssh2
  Compiler:         gcc
  Compiler flags:   -g -O2
  Library types:    Shared=yes, Static=yes
  Crypto library:   openssl: yes (AES-CTR: yes) libgcrypt: no
  Debug build:      no
  Build examples:   yes
  Path to sshd:     /usr/sbin/sshd (only for self-tests)
  libz compression: yes

(3)编译安装操作 make && make install

2、安装ssh2,老规矩,第一步安装扩展还得去官网中搜索:https://pecl.php.net/package/ssh2

(1)下载插件 wget https://pecl.php.net/get/ssh2-1.2.tgz

(2)常规配置 cd ssh2-1.2

/usr/local/php738/bin/phpize (phpize是一个shell脚本,用于生成PECL扩展的configure文件;编译PHP扩展的工具,主要是根据系统信息生成对应的configure文件)

./configure --prefix=/usr/local/php738/lib/ssh2 --with-php-config=/usr/local/php738/bin/php-config --with-ssh2=/usr/local/php738/lib/libssh2

(3)编译安装操作

make make install

结果:

Installing shared extensions:     /usr/local/php738/lib/php/extensions/no-debug-non-zts-20180731/

(4)将扩展文件写入到php.ini中

echo "extension=ssh2.so">>/usr/local/php738/etc/php.ini

(5)重启php-fpm,搞定,回测下phpinfo即可展示跟windows安装一样的结果即成功。

service ./php-fpm restart 或者 service ./php-fpm reload

胡梦旭博客
请先登录后发表评论
  • latest comments
  • 总共0条评论