0

这个标题有很多问题,但没有人帮忙。我的应用程序应该处理最大 2 GB 的文件上传,并且应该通过浏览器完成,而不是像 FTP 文件上传器那样。
我知道配置设置应该例如在php.ini. 但我心中有一些问题:

  1. uploadify库这样的文件大小是一个很好的解决方案还是有更好的选择?

  2. 由于体积大,也许需要在其中具有暂停/恢复功能。是否可以通过浏览器的 HTTP 文件传输来实现此功能?如果是,怎么做?

  3. 有些人谈论某些类型的漏洞,例如DOS ATTACKS。在这种情况下,这是一个严重的问题吗?这种攻击的考虑因素是什么?

如果有任何额外的建议和建议,请告诉我。

更新:有些人建议使用 FTP 文件上传来完成这项工作。是否应该通过为每个用户指定一个 FTP 帐户来让他们使用 FileZilla 等 FTP 客户端上传文件来完成?如果是这样,应如何处理传入进程。例如,我给每个用户一个像/home/user1这样的目录,他将他的文件上传到这个目录中。现在我应该如何根据用户会话数据获取上传的文件数据并将其保存到数据库中。
一般来说,我的意思是如何在这个 FTP 文件上传系统上编写脚本?
或者如果不可能,请告诉我。

请帮忙。

4

1 回答 1

0

暂停/恢复不是 HTTP 上传的标准功能。

应该可以让它工作,但需要大量的工作,而且质量可能非常不稳定。

要实现恢复,您需要以下内容:

  • 一个 Javascript 前端,可以查询服务器并询问已经上传了多少文件。
  • Javascript 还需要能够在浏览器中将上传文件分解成块(这对于拥有 2GB 文件的用户来说将是非常痛苦的),并从上传之前停止的点开始上传。
  • 由于 HTTP 请求一次发送整个文件,如果您希望能够暂停,Javascript 还需要分块发送它,并且如果用户按下“取消”,则有一个事件处理程序会中止下一个块。
  • 您的 PHP 程序会将每个简历视为一个全新的文件上传,因此它需要知道它正在接收现有文件的新块,并使用append模式。

如果这听起来像是一个易碎且充满错误的系统的秘诀,那么你是对的。我不想使用这样的网站来上传文件。有太多事情可能出错。

这里有一个教程可能会有所帮助,但我仍然认为这不是一个好主意。

如果我是你,我会考虑为你的上传设置一个 (S)FTP 服务器。麻烦会少很多。

于 2013-02-14T14:58:18.537 回答