确实需要一些聪明的想法来帮助我。我被卡住了!
我正在实现一个系统,允许用户将视频和文件上传到我的网站。目前,我正在为他们提供对自己的ftp用户帐户的ftp访问权限,他们可以在其中上传所需的文件。
Linux服务器上的FTP支持用户配额。
但是,现在我需要将上传协议(protocol)从ftp协议(protocol)中移开,并通过http查看Amazon s3文件上传系统。 ftp只会给防火墙,端口,主动,被动..列表带来太多问题。 :)虽然http s3上载只是用户允许Internet访问将要执行上载的 table 面应用程序的问题。
我已经一切正常,需要为每个用户设置配额。如何在不支持存储配额的系统(如Amazon s3)上实现存储配额?我不能给用户无限的访问权限,也不想将服务器置于中间,这只是意味着我的服务器必须接收文件,然后将其上传到s3的后端,这可以通过挂载s3来完成。作为驱动器,但是又回到了通过ftp上传到我的服务器到已安装的s3驱动器的状态。
我希望我的应用程序直接上传到s3服务器,但通过上传到1个存储桶中的psuedo amazon文件夹来维护用户配额。每个用户都将在上载到存储桶中的子文件夹中。
使这项工作有效的实现/逻辑是什么?
我是否要通过在/keyname/中查找文件来放置另一台服务器来监视用户,以查看该keyname(即useraccount)使用了多少存储空间?就保持每个帐户使用情况的最新状态而言,这不会花费很多钱吗?
请帮助,我需要一个策略。类似于s3上存储的保管箱实现,但对用户上传具有配额限制。
最佳答案
您将必须跟踪自己服务器上的配额。
如果您可以控制客户端,则可以要求他们先将文件大小发送到服务器,然后再上传到亚马逊,如果超过配额,则拒绝该文件。
如果不这样做,则可以允许上传
关于upload - 如何使用Amazon S3作为Dropbox这样的存储来实现用户存储配额,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9887163/