ssh2_connect ssh2 php windows apache dll libssh2

ssh2_connect - PHP instalar SSH2 en la máquina de Windows



pecl ssh2 (8)

  1. Coloque php_ssh2.dll en la carpeta ext
  2. Coloque libssh2.dll en la carpeta php
  3. Reiniciar IIS

eso me funciona

  • PHP 5.4.25 NTS + Windows Server 2012

Estoy tratando de instalar this en una máquina Windows+Apache . La documentación dice que SSH2 requiere las bibliotecas OpenSSL y libssh2 . He añadido estas líneas en mi archivo php.ini :

extension=php_openssl.dll extension=php_ssh2.dll

y reinició Apache pero aún no funciona ( Fatal error: Call to undefined function ssh2_connect() ).

¿Alguien me puede explicar cómo instalar este servicio?

Gracias

ps: soy italiano, lo siento por mi inglés ...


Arreglo que funcionó para mí. Estoy ejecutando xampp v. 3.2.1 apache 2.2 que enfrenta el mismo problema. Intenté colocar los archivos dll en una ubicación c: diferente, pero finalmente falló. Esto ayudó.

1.) Descargue los archivos dll específicos de la versión desde http://pecl.php.net/package/ssh2/0.12/windows y extraiga los archivos

Tenga en cuenta que aunque esté en la versión de Windows de 64 bits, descargue la versión 32 de THREAD SAFE ssh, es decir, Thread Safe (TS) x86 según su versión de PHP

2.) Agregar / reemplazar el archivo libssh2.dll en C: / xampp / php (instalación estándar)

3.) Agregar / reemplazar php_ssh2.dll y php_ssh2.pdb dentro de C: / xampp / php / ext (instalación estándar)

4.) reiniciar el servidor apache

Trabajado como un encanto

ACLAMACIONES


Así es como lo hice:

  1. Descargué la extensión Win32 SSH2 PECL desde esta ubicación (elija la versión apropiada);

  2. Extrae el contenido del archivo y:

    • colocó los archivos php_ssh2.dll y php_ssh2.pdb en la carpeta ext (por ejemplo, C:/php/ext );
    • copió el archivo libssh2.dll a C:/Windows/system32 y (si tiene Win64) carpeta (s) C:/Windows/SysWOW64 ;
  3. Ejecute el siguiente comando para registrar la DLL:

    C:/> regsvr32 libssh2.dll

  4. Reiniciado apache.

Nota final

Si tiene PHP x64, debe buscar la versión x64 de la biblioteca / DLL de SSH2. Este sitio ofrece algunas bibliotecas compiladas de Win64 para PHP, pruebe aquí primero.

Espero que esto ayude.


En primer lugar, su pregunta revela dos conceptos erróneos:

  1. La sección de Requirements realidad dice esto:

    Se requieren las bibliotecas »OpenSSL y» libssh2. Asegúrese de que las bibliotecas de desarrollo estén instaladas, donde un nombre de paquete típico podría ser openssl-dev.

    No se trata de extensiones de PHP, se trata de bibliotecas de terceros que no tienen nada que ver con PHP.

  2. extension=php_ssh2.dll requiere que realmente tenga un archivo llamado php_ssh2.dll en el directorio ext de PHP y probablemente no lo tenga, principalmente porque no está incluido con PHP.

Si revisamos el capítulo de Installation , podemos leer que SSH2 es una extensión de PECL. Hay algunos enlaces con instrucciones, pero puedo hacer un resumen de la información importante:

  • Necesita un archivo php_ssh2.dll que coincida con su instalación de PHP.
  • Ni el equipo de PHP ni el equipo de PECL distribuyen dicho archivo.
  • Instalar las extensiones PECL en Windows es difícil. Debe descargar el código fuente de C, tomar un compilador de C y crear el archivo usted mismo o encontrar a alguien que ya lo haya hecho por usted.

Dijo que, a menos que php_ssh2.dll en Google php_ssh2.dll y encuentre algo relevante, probablemente no tenga suerte.


He instalado wamp con PHP 5.6.25 / 7.0.10 - MySQL 5.7.14 instalado y actualmente estoy trabajando en PHP 7.0. Yo tenía el mismo error. Verifiqué usando phpinfo () si las bibliotecas OpenSSL y libssh2 funcionaban (puedes buscar en google cómo verificarlo). Después de que pude ver que estaban trabajando, descargué php_ssh2.dll en http://pecl.php.net/package/ssh2/1.0/windows (también se puede encontrar en http://windows.php.net/downloads/pecl/releases/ssh2/ ) para la versión 7.0, póngalo en la carpeta php / ext. Que lo incluí en el archivo php.ini utilizando extension = php_ssh2.dll.

Luego apareció en phpinfo (). Y funcionó. Espero eso ayude.


Si alguien tiene problemas para instalar SSH2, así es como lo hice:

1) Descargue la biblioteca SSH2 PECL de PHP.net [elija la versión apropiada].

2) Copie libssh2.dll en la libssh2.dll System32 [x86] o SysWOW64 [x64].

3) Copie php_ssh2.dll y php_ssh2.pdb en la carpeta php / ext .

4) Eliminar '';'' desde la línea ;extension=php_ssh2.dll en php.ini. Si esta línea no está en su php.ini, agréguela.

5) Reinicie Apache .


Si está ejecutando xamp 3.2.1 y PHP 5.6.8, esto podría ser útil para usted.

Haga lo que dice alex b y descargue el paquete que corresponda dependiendo de su versión de php (y bits) de esta página ( link )

¡He descargado y reemplazado en C: / xampp / php / ext y funcionó!

Espero que esto ayude, saludos.