使用php自动文件传输

时间:2011-10-17 09:03:01

标签: php ssh file-transfer

我需要有关以下工作流程的信息以及我如何执行它。

我不能分享有关工作的详细信息,但这是工作流程。

我将在一台服务器上安装管理面板,在另一台服务器上安装用户界面。日常用户将登录管理面板并创建将在用户界面上显示的图像。这包括数据库更新和几个图像文件。

完成工作后,我需要将这些文件传输到另一台服务器。如果只需点击一下按钮即可完成。

所有文件都在一个文件夹中,需要传输该文件夹。

创建的文件也接近100MB,如果可以,可以使用SSH自动传输文件吗?

3 个答案:

答案 0 :(得分:1)

如果您使用exec()system(),您可以直接调用shell以您喜欢的任何方式进行转移。你可以使用wput,ftp,rsync,scp等。

答案 1 :(得分:0)

使用exec()passthru()system()并调用系统函数来传输文件。通过SSH进行rsync可能是一个很好的解决方案。

答案 2 :(得分:0)

我建议使用phpseclib, a pure PHP SFTP implementation。例如

<?php
include('Net/SFTP.php');

$sftp = new Net_SFTP('www.domain.tld');
if (!$sftp->login('username', 'password')) {
    exit('Login Failed');
}

echo $sftp->pwd() . "\r\n";
$sftp->put('remote.file', 'local.file', NET_SFTP_LOCAL_FILE);
print_r($sftp->nlist());
?>