PHP Exec SCP不会将文件复制到远程服务器
我需要一个文件从一个服务器到另一个服务器(我都拥有)使用PHP。我有以下脚本:PHP Exec SCP不会将文件复制到远程服务器,php,exec,scp,Php,Exec,Scp,我需要一个文件从一个服务器到另一个服务器(我都拥有)使用PHP。我有以下脚本: <?php exec('scp /home/pat/file1.tst pat@myserver.com:/home/pat/file1.txt'); 那是什么错误?我该如何修复它呢?PHP环境不允许在您的服务器上使用exec。我知道这有点晚了,但您可能会在以下方面运气更好: 如何使用它的示例: <?php include('Net/SCP.php'); include('Net/SSH2.php'
<?php
exec('scp /home/pat/file1.tst pat@myserver.com:/home/pat/file1.txt');
那是什么错误?我该如何修复它呢?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\u pipe
是不允许的,要纠正这个错误,你需要允许它。谷歌的第一个打击是这样的评论:-所以它可能是一个被禁止的执行官。顺便说一句,另见。@Cyclone:这里。。。先生,您是位绅士和学者。我似乎是船长(显然:)我怎么能做到这一点?我需要更新apache吗?或者php?如果是您的服务器,请检查php.ini禁用\u函数。。。如果它是一个托管服务器,我敢打赌我的退休金他们不会启用它。
<?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));
?>