2012-03-28 15 views
1

Ich habe versucht, die SSH2 - Bibliotheken für PHP auf einem Webserver mit CentOS 5 mit PHP 5.1.6 zu installieren und konnte alle Abhängigkeiten erfolgreich installieren, aber nach dem Neustart der Web-Server bekomme ich folgende Fehlermeldung:ssh2.so kann nicht auf CentOS 5 geladen werden

PHP Warnung: PHP Start: Dynamische Bibliothek kann nicht geladen werden '/usr/lib64/php/modules/ssh2.so' - libssh2.so.1: Gemeinsame Objektdatei kann nicht geöffnet werden: Keine solche Datei oder Verzeichnis in Unbekannt in der Zeile 0

Hat jemand schon einmal in diesem Bereich? Die Datei ssh2.so existiert unter '/usr/lib64/php/modules/ssh2.so' und hat dieselben Dateiberechtigungen wie alle anderen Erweiterungen (-rwxr-xr-x).

Dank

+0

Ist selinux aktiviert? Wenn ja, hat es die korrekte Kontextbezeichnung? –

+0

Selinux ist derzeit deaktiviert. –

Antwort

-1

Der Schlüssel zum Fehler, ist dies:

libssh2.so.1: cannot open shared object file: No such file or directory 

Ihre ssh2.so Datei nicht finden kann. Führen Sie diese und Sie werden sehen, was ich meine:

ldd /usr/lib64/php/modules/ssh2.so 

Try this:

updatedb 
locate libssh2.so.1 

Wenn sie gefunden wurde, müssen Sie möglicherweise einen symbolischen Link erstellen innen/usr/lib64/oder so etwas.

Wenn das es nicht finden, eine schnelle Google-Suche bringt dies als Treffer für libssh2 auf centos5 up:

http://centos.karan.org/el5/extras/testing/x86_64/RPMS/libssh2-0.18-10.el5.kb.x86_64.rpm

installieren, dass Apache neu zu starten, und versuchen Sie es erneut.

+0

Hinzufügen der symbolischen Verbindung gibt zurück: 'PHP Start: Ungültige Bibliothek (vielleicht keine PHP-Bibliothek) 'ssh2.so' in Unbekannt in Zeile 0' und ich habe bereits libssh2 installiert – franzlorenzon

+1

Um dies zu beheben, habe ich es installiert: http: // stackoverflow.com/questions/8535885/trying-to-install-ssh2-on-php/15138640#15138640 – franzlorenzon

-1

Vielleicht phpseclib, a pure PHP SSH implementation, würde besser für Sie arbeiten? Ein Beispiel:

<?php 
include('Net/SSH2.php'); 

$ssh = new Net_SSH2('www.domain.tld'); 
if (!$ssh->login('username', 'password')) { 
    exit('Login Failed'); 
} 

echo $ssh->exec('pwd'); 
echo $ssh->exec('ls -la'); 
?>