公司项目中,需要从一个ftp服务器上下载文件,并上传到oss上,公司配的开发机是windows系统的,所以开发过程钟,需要在Windows系统上,安装php-ssh2扩展。

php-ssh2扩展要依赖libssh2扩展包,所以安装分为两部分,安装过程如下:

安装 libssh2.dll 扩展

1、下载:https://cn.dll-files.com/libssh2.dll.html

2、将下载到的 libssh2.dll 复制到 C:/windows/system32 和 C:/windows/syswow64 各一份

安装 php-ssh2 扩展

1、下载:http://windows.php.net/downloads/pecl/releases

根据自己的PHP版本去找,我使用的是 php-7.2.11-Win32-VC15-x64,所以下载的是 php_ssh2-1.1.2-7.2-ts-vc15-x64.zip,还有个文件是 php_ssh2-1.1.2-7.2-nts-vc15-x64.zip。

注意:ts是线程安全的,nts是线程不安全的,可通过 phpinfo() 中的Thread Safety选项查看,enable是线程安全的,x86是32位系统的,x64是64位系统的。

2、下载完成后解压,将 php_ssh2.dll、php_ssh2.pdb 放到你的 php 扩展目录 php/ext/ 下,

3、找到 php.ini文件,加入 extension=php_ssh2

4、重启nginx,不报错就基本生效了。也可以在命令行中,使用 php -m 查看是否成功加载了php-ssh2扩展。

值得注意的是,windows系统中使用cmd索引 php 命令索引文件是在 “我的电脑-右键-更改设置-高级-环境变量-系统变量-Path”中设置的,如果安装上面操作都没问题,但是扩展还是不生效,可以检查一下自己的环境变量设置有没有问题。另外如果使用的是PHPStorm工具,要关掉后重新打开才能生效。

本文为 陈华 原创,欢迎转载,但请注明出处:http://www.ichenhua.cn/blog/post/19