Oma*_*man 4 macos ssh pecl ssh2-sftp php-7.1
尝试使用时
ssh2_sftp($this->con);
Run Code Online (Sandbox Code Playgroud)
PHP 7.1.7认为Im正在类中寻找函数。经过一番阅读后,我发现需要从PECL(http://php.net/manual/en/wrappers.ssh2.php)安装SSH2。
当我这样做时,出现以下错误:
pecl/ssh2 requires PHP (version >= 4.0.0, version <= 6.0.0), installed version is 7.1.7
No valid packages found
install failed
Run Code Online (Sandbox Code Playgroud)
任何人都对如何使其在PHP 7.1.7的MacOs 10.13.3(17D47)上运行有任何想法?提前致谢!
尝试这个:
pecl install ssh2-1.1.2
Run Code Online (Sandbox Code Playgroud)
您可以在此处查看 ssh2 的可用版本
对于使用 alpine linux 的用户,请务必先添加 libssh2-dev:
apk --update add libssh2-dev
Run Code Online (Sandbox Code Playgroud)
我设法在MacOS High Sierra上安装了php-ssh2。
首先,我必须安装libssh2,以便PECL编译扩展。
我使用brew,但是很可能libssh2也可以从mac端口获得。
brew install libssh2
Run Code Online (Sandbox Code Playgroud)
然后
pecl install ssh2-1.1.2
Run Code Online (Sandbox Code Playgroud)
我已经安装了Xcode命令行工具-我认为编译扩展需要它。
我终于在MacOS Mohave上找到了解决方案。我有Homebrew安装的PHP 7.3:
brew install php
brew install libssh2
Run Code Online (Sandbox Code Playgroud)
从最新来源安装ssh2 pecl扩展的开发版本:
cd ~/Downloads
git clone https://git.php.net/repository/pecl/networking/ssh2.git
cd ssh2
phpize
./configure
make
make install
Run Code Online (Sandbox Code Playgroud)
在中启用扩展名php.ini。您可以使用TextEdit:
open -e /usr/local/etc/php/7.3/php.ini
Run Code Online (Sandbox Code Playgroud)
添加extension="ssh2.so"到文件的开头并保存。
测试结果:
php -i | grep libssh2
Run Code Online (Sandbox Code Playgroud)
你应该看到
libssh2 version => 1.9.0
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4082 次 |
| 最近记录: |