Что означает значение недопустимого смещения: -1 ErrorException выдается из phpseclib при попытке подключения к удаленному серверу? - PullRequest
0 голосов
/ 09 января 2019

Я пытаюсь войти на удаленный сервер, используя функцию phpseclib Net_SSH2-> login (). Я получаю ошибку тайм-аута соединения, поэтому я добавил $ ssh-> getLastError (), чтобы получить более четкое сообщение об ошибке, но все, что я получаю, это

исключение «ErrorException» с сообщением «неопределенное смещение: -1»

вместе с трассировкой стека. Мне интересно, что здесь означает неопределенное смещение, и, самое главное, что означает число -1? Спасибо !!

Вот мой код:

$ssh = new \Net_SSH2('host.address');
$key = new \Crypt_RSA();
$key->setPassword('');
$key->loadKey(file_get_contents('keyfile.ppk'));
try
{
    if ($login = $ssh->login('username', $key))
    {
        \Log::error('Success');
        \Log::info($login);
        \Log::error('-----------------------');

    } else {
        \Log::error('Failed');
        \Log::error($ssh->getErrors());
        \Log::error($ssh->getLastError());
        \Log::error('-----------------------');
     }

 } catch(\Exception $e) {
     \Log::error('Exception');
     \Log::error($ssh->getErrors());
     \Log::error($ssh->getLastError());
     \Log::error('-----------------------');
 }

1 Ответ

0 голосов
/ 09 января 2019

Я понял, что исключение выдается изнутри функции входа в систему php seclib. Причина была в том, что мне пришлось занести в белый список мой IP-адрес на целевом сервере, поэтому это была попытка подключиться к целевому серверу, который не удался из-за истечения времени ожидания.

...