MudGuard: SSH2 SFTP PHP Problem

Beitrag lesen

Hi,

$stream = fopen("ssh2.sftp://".(int)$sftp.$remote_file_path, 'r'); oder $stream = fopen("ssh2.sftp://".$sftp.$remote_file_path, 'r');

        throw new \Exception("Could not connect to $host on port $port");

Hm. Was soll der \ da?

$remote_file_path = "/";
    $stream = fopen("ssh2.sftp://".(int)$sftp.$remote_file_path, 'r');

Was erwartest Du hier? $sftp ist eine resource. Das String-verknüpfst Du mit "/". Und castest das als Integer, was bestenfalls sowas wie "ssh2.sftp://42" ergäbe. Oder bindet der Cast stärker? Dann ergäbe das "ssh2.sftp://42/".

fopen erwartet einen Dateinamen oder eine URL (falls das für die URL überhaupt freigeschaltet ist).

Du hast hier die URL-Variante mit Protokoll ssh2.sftp gewählt - gibst dann aber anstelle des Hostnames in der URL eine Nummer (in obigen Beispielen hab ich mal die 42 gewählt) an.

Und das soll funktionieren?

Müßte nach

$sftp = ssh2_sftp($connection);

nicht ein ssh2_scp_recv() oder ssh2_scp_send() oder sowas in der Art kommen?

cu,
Andreas a/k/a MudGuard