PHP在Windows机器上安装SSH2(PHP Install SSH2 on Windows m

2019-07-20 17:34发布

我想安装此一上Windows+Apache机器。 文件说,SSH2需要OpenSSLlibssh2库。 我已经加入在我这行php.ini文件:

extension=php_openssl.dll
extension=php_ssh2.dll

并重新启动Apache的,但它仍然没有工作( Fatal error: Call to undefined function ssh2_connect()

任何人都可以解释我如何安装此服务?

谢谢

PS:我是意大利人,对不起,我的英语...

Answer 1:

Here's how I did it:

  1. Downloaded Win32 SSH2 PECL extension from this location (choose the appropriate version);

  2. Extracted the archive's content and:

    • placed php_ssh2.dll and php_ssh2.pdb files in the ext folder (e.g. C:\php\ext);
    • copied libssh2.dll file to C:\Windows\system32 and (if you got Win64) C:\Windows\SysWOW64 folder(s);
  3. Run the following command to register the DLL:

    C:\> regsvr32 libssh2.dll
    
  4. Restarted Apache.

Final note

If you got PHP x64, you have to lookup for the x64 version of the SSH2 library / DLLs. This site offers some Win64 compiled libraries for PHP, try here first.

Hope this helps.



Answer 2:

如果有人有安装SSH2麻烦,这里是我做到了:

1)下载从SSH2 PECL库PHP.net [选择合适的版本。

2)复制libssh2.dllSystem32下 [86]或SysWOW64中 [64]文件夹中。

3)复制php_ssh2.dllphp_ssh2.pdbPHP / ext文件夹。

4)拆除 ';' 从;extension=php_ssh2.dll在php.ini线。 如果此行是不是在你的php.ini,添加它。

5)重启Apache。



Answer 3:

  1. 地方php_ssh2.dll在ext文件夹
  2. libssh2.dll在PHP文件夹
  3. 重新启动IIS

对于我这种工作

  • PHP 5.4.25 NTS + Windows Server 2012


Answer 4:

如果您正在运行XAMP 3.2.1和PHP 5.6.8,这可能是对你有帮助。

做什么亚历克斯乙说,并下载通过此页面对应dependindg你的PHP版本(位)的包( 链接 )

我已经下载并在被C:\ XAMPP \ PHP \分机和它的工作!

希望这有助于问候。



Answer 5:

libssh2(DEPS): http://windows.php.net/downloads/php-sdk/deps/

php_ssh2(EXT): http://windows.php.net/downloads/pecl/releases/ssh2/0.12/

具有5.5之前的版本已经libssh2.dll(从第二连杆)



Answer 6:

我有WAMP与PHP 25年6月5日/ 7.0.10 - MySQL的安装5.7.14和我厘米目前正在对PHP 7.0。 我有同样的错误。 我检查使用的phpinfo()如果两个librarires OpenSSL和libssh2是工作(你可以在google如何检查它)。 之后,我可以看到他们是工作,我在下载php_ssh2.dll http://pecl.php.net/package/ssh2/1.0/windows (也可以找到http://windows.php.net/downloads/pecl /发行/ SSH2 / )为7.0版本,把它到PHP \ ext文件夹。 比我在使用延长= php_ssh2.dll其列入php.ini文件。

然后,它出现在phpinfo()函数。 和它的工作。 希望能帮助到你。



Answer 7:

修正了在为我工作。 。我运行XAMPP v 3.2.1 Apache 2.2的面临着同样的问题,试图将DLL文件在不同的C:位置,但未能最终这有助于。

1)从下载特定版本的dll文件http://pecl.php.net/package/ssh2/0.12/windows和提取文件

请注意,即使你是在Windows的64位版本下载32版的线程安全的ssh即线程安全(TS)的x86按您的PHP版本

2.)添加/中C代替libssh2.dll:\ XAMPP \ PHP(标准安装)

3.)添加/取代℃以内的php_ssh2.dll&php_ssh2.pdb:\ XAMPP \ PHP \分机(标准安装)

4)重新启动Apache服务器

工作就像一个魅力

干杯



Answer 8:

首先,你的问题出现了两个误区:

  1. 该要求一节居然这样说:

    该»OpenSSL和»libssh2库是必需的。 确保开发库安装,其中一个典型的包名称可能的OpenSSL开发。

    这是不是在谈论PHP扩展,它在谈论什么都没有做PHP第三方库。

  2. extension=php_ssh2.dll要求你确实有一个名为php_ssh2.dll在你的PHP的ext目录,你可能没有它,主要是因为它不与PHP捆绑。

如果我们检查安装章节中,我们可以读到,SSH2是一个PECL扩展。 有是有指令的几个环节,但我可以做的重要信息的摘要:

  • 你需要一个php_ssh2.dll你的PHP安装相匹配的文件。
  • 无论是PHP团队也不是PECL队分发此类文件。
  • 在Windows上安装PECL扩展是很难的。 您需要下载的C源代码,抢了C编译器,使文件的自己,或找人谁已经做了你。

说,除非你谷歌php_ssh2.dll并找到相关的东西,你可能是出于运气。



文章来源: PHP Install SSH2 on Windows machine