SSH2 installieren Problem

ReqonxS

Mitglied
Hallo ich habe wieder ein Problem. Undzwar will ich mit SSH2 arbeiten jedoch scheiter ich bei der Installation auf Windows.
Screen:
lol.PNG
 
Im Apache-Log dürfte sich eine genauer Meldung befinden, warum es nicht funktioniert. Ich tippe auf:

- Es handelt sich um eine Zend-Extension, die muss mit

Code:
zend_extension = "pfad/zur/dll"

geladen werden.

- Es handelt sich um eine DLL für die Non-Thread-Safe-Variante von PHP, du verwendet aber die ZTS-PHP-Variante (thread-safe) - oder umgekehrt. Dazu die phpinfo()-Seite prüfen.

- Es handelt sich um eine DLL die für eine andere Version von PHP kompiliert wurde.
 
Okey also ich bin grad echt verwirrt :O
Soll ich jetzt also es so versuchen:
zend_extension = "c:\xampp\php\ext\php_ssh2.dll"

Okey also ich hab es jetzt so versucht aber folgender Fehler:
lol.PNG

Wenn ich die phpinfo(); aufrufe steht da auch etwas über ssh2
libSSH Version libssh2/1.3.0

Unter PHP-Info: Thread Safety enabled
 
ReqonxS hat gesagt.:
Wenn ich die phpinfo(); aufrufe steht da auch etwas über ssh2

Dann wurde die DLL geladen. Es fehlt aber offensichtlich noch zusätzlich etwas, wenn die Funktion php_checkuid() nicht gefunden wurde. Wo hast du die DLL her?

Und welche PHP-Version hast du?
 
Zuletzt bearbeitet:
Ok, es ist keine Zend-Extension, also ganz normal mit extension= einbinden.

Welche PHP-Version hast du genau?

Nein, ich helfe nicht über Skype. Das Forum genügt für die Lösung des Problems und evtl. wollen auch andere wissen, wie man das macht ;-)
 
Also, fassen wir mal zusammen:

- Du verwendest PHP 5.4.7 (Thread-Safe)
- Du hast eine DLL runter geladen, die für PHP 5.3.x ist

Fällt dir da was auf? ;-)

Also php_checkuid() ist in der safemode.c implementiert (gewesen). Seit PHP 5.4 gibt es den Safemode nicht mehr, der Source dafür wurde komplett entfernt.

Du hast jetzt folgende Möglichkeiten:

- Du downgradest auf PHP 5.3.x
- Du baust dir eine DLL für PHP 5.4
- Du suchst dir jemanden, der eine DLL für dich baut (ich könnte das, jedoch müsstest du mir vertrauen, das ich dir keinen Müll schicke, der Hintertüren auf deinem System öffnet - was ich nicht tue)
- Du suchst weiter nach einer DLL für php 5.4 Thread-Safe (achte auch darauf, das die richtige Compiler-Version verwendet wurde - steht in der phpinfo()).

Wenn du möchtest, das ich eine für dich baue, brauch ich Informationen, und zwar alle, die auf dem Screenshot in diesem Artikel markiert sind: http://www.tutorials.de/content/206-programm-flaschenhaelse-php-mit-xdebug-finden.html
 
Habe was gefunden:
http://www.apachehaus.com/forum/index.php?topic=839.0
Ist das richtig ?

Ok ist falsch.
Also die Infos:
Compiler: MSVC9 (Visual C++ 2008)
PHP API 20100412
PHP Extension 20100525
Zend Extension 220100525
Zend Extension Build API220100525,TS,VC9
PHP Extension Build API20100525,TS,VC9
Debug Build no
Thread Safety enabled
Zend Signal Handling disabled
Zend Memory Manager enabled
Zend Multibyte Support provided by mbstring
IPv6 Support enabled
DTrace Support disabled
 
So, ich hab mal was gebaut. Meine Güte waren das ein Haufen Abhängigkeiten zu anderen Libraries. So weit es ging, hab ich statisch gelinkt. Die libeay32.dll wirst du aber noch brauchen - dürfte aber bei PHP dabei sein.

Im Archiv findest du in php-ssh2\php-ssh2\Release die php_ssh2.dll. Teste mal, ob es funktioniert. Wenn nicht noch mal mit genauer Fehlermeldung melden.

Ich hoffe es funktioniert.

Achja, der Source-Code mit allen Projekt-Files für VC++ 2008 und den notwendigen Source-Code-Änderungen in ssh2.c und ssh2_fopen_wrappers.c ist auch dabei.

Der Compile spuckt noch ein paar Warnungen bezgl. unsicheren Funktionen wie strcat und strcpy aus. Ich habe sie erstmal ignoriert. Wenn es läuft, kann ich dafür auch einen Patch bauen.
 

Anhänge

  • php-ssh2.7z
    392,5 KB · Aufrufe: 42
Zurück