SSH / использование проблемы соединения SFTP Tamir. SharpSsh

Еще одно решение, если вы уже используете GuzzleHttp .

Это решение основано на внутреннем методе GuzzleHttp\Client.

use GuzzleHttp\Psr7;

function resolve(string $uri, ?string $base_uri): string
{
    $uri = Psr7\uri_for($uri);

    if (isset($base_uri)) {
        $uri = Psr7\UriResolver::resolve(Psr7\uri_for($base_uri), $uri);
    }

    // optional: set default scheme if missing
    $uri = $uri->getScheme() === '' && $uri->getHost() !== '' ? $uri->withScheme('http') : $uri;

    return (string) $uri;
}

5
задан jinsungy 22 October 2009 в 16:18
поделиться

2 ответа

Не глядя на файлы журнала, трудно сказать, в чем проблема.

Однако имейте в виду, что SCP - это не SFTP - это совершенно разные протоколы, работающие по SSH. Возможно, ваш SFTP не поддерживает SCP - не все серверы SFTP поддерживают. CoreFTP может использовать SFTP.

Наш коммерческий пакет, edtFTPnet / PRO , также стоит попробовать, хотя бы в качестве альтернативы, чтобы попытаться заставить другого клиента работать против вашего сервера.

1
ответ дан 14 December 2019 в 08:55
поделиться

Я использую Tamir.SharpSSH - последнюю версию 1.1.1.13

Это класс SFTP. Вы можете использовать этот класс напрямую для SFTP вместо использования JSch, Session class.

Быстрый пример здесь:

127.0.0.1 - IP-адрес сервера

/ SFTPFolder1 / SFTPFolder2 - Местоположение сервера, куда я хочу поместить мои файлы

        Sftp sftpClient = new Sftp("127.0.0.1", "myuserName", "MyPassword");

        sftpClient.Connect();

        sftpClient.Put(@"C:\Local\LocalFile.txt", "/SFTPFolder1/SFTPFolder2");

Сообщите мне, если у вас возникнут проблемы.

6
ответ дан 14 December 2019 в 08:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: