ssh2_connect ssh2 extension php ssh

extension - ssh2 php



Instalar la extensión PECL SSH2 para PHP (5)

Instalar libssh2 a través de tar.gz desde http://sourceforge.net/projects/libssh2/ ayuda mucho (--with-ssh2 = / usr / local / include /).

Pero "yum install libssh2-devel" es una mejor idea.

Estoy intentando instalar este http://fr2.php.net/manual/en/book.ssh2.php en un Centos 5 (un tenedor de RHEL 5).

Instalé libssh2 (yum install libssh2) que se encuentra en / usr / lib, y cuando instalo la extensión SSH2 (a través de pecl install -f ssh2) aparece este mensaje

comprobando si hay archivos ssh2 en la ruta predeterminada ... no se ha encontrado configure: error: no se encontró la biblioteca libssh2 requerida. Puede obtener ese paquete desde http://sourceforge.net/projects/libssh2/ ERROR: `/tmp/pear/download/ssh2-0.11.0/configure --with-ssh2 = / usr ''failed

Si configuro / usr / lib, obtengo el mismo mensaje

ERROR: `/tmp/pear/download/ssh2-0.11.0/configure --with-ssh2 = / usr / lib ''falló

¿Dónde está el problema?


$ sudo pecl channel-update pecl.php.net $ sudo apt-get install libssh2-1-dev $ sudo pecl install -a ssh2-0.12 $ echo ''extension=ssh2.so'' | sudo tee /etc/php5/mods-available/ssh2.ini > /dev/null $ sudo php5enmod ssh2


yum install libssh2-devel no funcionó para mí:

No hay paquete libssh2-devel disponible.

Así que descargué el paquete de rpm de rpmfind e instalé con rpm -ivh

Después de eso, acaba de agregar la extension=ssh2.so a extension=ssh2.so


Estoy trabajando en Centos, ninguna de estas respuestas fue la solución completa para mí. Seguí estas instrucciones :

$ sudo yum install -y gcc php-devel php-pear libssh2 libssh2-devel

Pero php-devel no se instalaría, quejándose de conflictos. Busqué yum para encontrar los paquetes de desarrollo php que tenía disponibles

$> yum search php|grep devel ... php55u-devel.x86_64 : Files needed for building PHP extensions php56u-devel.x86_64 : Files needed for building PHP extensions php70u-devel.x86_64 : Files needed for building PHP extensions ...

Entonces corrí

$> sudo yum install -y php56u-devel

Y se instaló limpiamente. Luego, continuando con las instrucciones, corrí

$ pecl install -f ssh2

Y compiló. Luego agregué la extensión a php

$ touch /etc/php.d/ssh2.ini $ echo extension=ssh2.so > /etc/php.d/ssh2.ini

Y en mi sistema, en lugar de

$ /etc/init.d/httpd restart

Tenía que hacer

$ sudo /bin/systemctl restart php-fpm.service

Así que ese era todos los pasos para instalar. Y finalmente para confirmar:

$> php -m|grep ssh2 ssh2


Tuve este problema:

Estoy en una cuenta alojada "Avanzada" de Pair.com, por lo que estoy un poco limitado en lo que puedo hacer. No creo que pueda yum ni aptitude ni ninguno de los otros paquetes precompilados.

He descargado y compilado libssh2. Durante el proceso pecl , pregunta dónde se encuentra la biblioteca. Está en "~ / usr / local / lib" y he intentado varias variaciones, incluso totalmente calificado. Pero seguí recibiendo el mismo error.

El mensaje de error no explica con precisión qué archivo está buscando. libssh2.so está en ese directorio. Sé que la salida se supone que es ssh2.so. Me preguntaba si se supone que debe haber un ss2.something, o libssh.nothing?

Lo arreglé así En mi caso, después de compilar libssh2 descargué el tarball PEAR. El truco fue:

./configure --with-ssh2=<libssh2 location> --prefix=<libssh2 location>

Otro truco es que, como Pair.com está ejecutando FreeBSD, tengo que hacer un "cd". después del comando ./configure. De lo contrario, make produce un error "Permiso denegado". Aparentemente, esto es necesario en todos los sabores * nix BSD.