我需要使用PHP从一个服务器获取文件并传输到另一个服务器(我拥有两者)。 我有如下脚本:
<?php
exec('scp /home/pat/file1.tst pat@myserver.com:/home/pat/file1.txt');
我遇到了这个错误:
Disallowed system call: SYS_pipe
这是什么错误?我该如何修复?
您的PHP环境不允许在您的服务器上执行exec命令。
<?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));
?>
SYS_pipe
是被禁止的,为了解决这个错误,你需要允许它。 - Cyclone