PHP Exec SCP не копирует файл на удаленный сервер
Мне нужен файл с сервера на другой сервер (у меня есть оба) с использованием PHP. У меня есть следующий сценарий:
<?php
exec('scp /home/pat/file1.tst [email protected]:/home/pat/file1.txt');
Я получаю эту ошибку:
Disallowed system call: SYS_pipe
Что это за ошибка? и как я могу это исправить?
13
Author: Pat R Ellery, 2011-10-19
2 answers
Среда PHP не разрешает exec на вашем сервере.
12
Author: TigOldBitties, 2011-10-19 19:13:48
Я знаю, что это немного поздно, но вам может повезти больше с чистой реализацией PHP SCP phpseclib:
Https://raw.github.com/phpseclib/phpseclib/master/phpseclib/Net/SCP.php
Пример того, как его использовать:
<?php
include('Net/SCP.php');
include('Net/SSH2.php');
$ssh = new Net_SSH2('www.domain.tld');
if (!$ssh->login('username', 'password')) {
exit('bad login');
}
$scp = new Net_SCP($ssh);
$scp->put('abcd', str_repeat('x', 1024*1024));
?>