【问题标题】:Uploading a file via website to SFTP server通过网站上传文件到 SFTP 服务器
【发布时间】:2019-03-29 14:03:15
【问题描述】:

我正在建立一个网站。我有服务器的 SFTP 登录凭据。

我正在尝试让用户可以在他们的硬盘上选择一个文件,然后通过 SFTP 将该文件上传到远程计算机。

这可能吗?我该怎么做?

【问题讨论】:

  • 我原来的标题是“通过 sftp 将文件从网站传输到另一台计算机”。这个新标题在技术上可能更正确,但这些不是我在寻找问题答案时使用的词。希望谷歌能把它捡起来,这样其他不知道自己在做什么的人,比如我自己,即使不知道确切的语言也能找到它。

标签: sftp file-transfer


【解决方案1】:

我假设您使用(或可以使用)PHP。您没有具体说明您使用的是什么技术。

从阅读开始:

结合在一起可以得到如下代码:

include('Net/SFTP.php');

$uploaded_file = $_FILES["attachment"]["tmp_name"];

$sftp = new Net_SFTP("example.com");
if (!$sftp->login('username', 'password'))
{
    die("Connection failed");
}

$sftp->put(
    "/remote/path/".$_FILES["attachment"]["name"], file_get_contents($uploaded_file));

这是一个非常简化的代码,缺少大量的验证和错误检查。

代码使用phpseclib library

【讨论】:

    【解决方案2】:

    如果您在 Windows 中,则可以使用 FTP 客户端,例如 WinSCP...如果您在 Linux 中,请使用 SCP 命令:

    scp /home/me/myfile.dat user:password@remoteserver:/remotedir

    【讨论】:

    • 我不会尝试从我自己的计算机上一次上传文件。我正在建立一个网站。这个过程需要自动上传来自随机人的文件。
    • 糟糕,取决于您使用的语言...您应该尝试 PHP 和 ssh2_sftp 检查此 another question
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-01-28
    • 1970-01-01
    • 1970-01-01
    • 2022-11-10
    • 2023-03-16
    • 2018-07-11
    • 2016-02-02
    相关资源
    最近更新 更多