Вот фрагмент кода, использующий PHP-функцию ssh2_scp_send()
, пытающуюся загрузить файл на ssh-сервер:
<?php
$conn = ssh2_connect('192.168.86.241', 22);
ssh2_auth_password ($conn, $username, $password);
if (ssh2_scp_send($this->connection, $local_file, $remote_file)) {
echo 'error';
} else {
echo 'done';
}
Моя проблема в том, что при отправке большого файла или при намеренном уничтожениисервер ssh, то процесс этого сценария не будет завершен автоматически, и в конечном итоге съедает все ресурсы клиентских машин.
A strace
в linux или dtruss
в mac показывают, что процесс продолжает вызывать recvfrom()
, вот скриншоты результата команды: