ssh2 sftp — ssh2_scp_send () и ssh2_scp_recv () не работают в php. Зачем?

Функция ssh2_scp_send () висит в php. Вот код:

$debug_line_feed = "\n";
$conn = ssh2_connect($sftp_server, 22);
$return = ssh2_auth_password($conn, $sftp_user_name, $sftp_user_pass);
if ($return===true) echo "successfull connection".$debug_line_feed;

echo "uploading file".$debug_line_feed;
$local_filename = $product_feed_file_with_path;
$remote_filename = 'product_feed.txt';
ssh2_scp_send($conn, $local_filename, $remote_filename);
echo "echo "successful".$debug_line_feed;

Когда я запускаю его, он выводит «успешное соединение», «загрузка файла», а затем зависает. Есть идеи, как это исправить?

Я также попытался загрузить файл с помощью ssh2_scp_recv, и он также зависает, когда локальный файл создается в виде 0-байтового файла.

0

Решение

Я предполагаю, что на сервере установлена ​​оболочка тюрьмы. В этот момент SCP не будет работать, а SFTP будет работать.

2

Другие решения

в последнее время я использую sftp для отправки файла, linux для windows, ssh2_scp_send не работает, я решаю проблемы использования

$sftp = ssh2_sftp($conn);
$contents = file_get_contents($localPath);
$result = file_put_contents("ssh2.sftp://{$sftp}/{$remotePath}", $contents);

потом работает

0

По вопросам рекламы [email protected]