Laravel建议在s3上解压缩文件

时间:2016-02-11 09:23:46

标签: laravel amazon-s3 laravel-5 unzip

我有一个用户上传zip文件的表单。我正在使用文件系统。

是否可以将文件上传到S3,然后将文件解压缩到那里?

我应该首先解压缩文件,然后将它们上传到S3。

压缩文件夹里面有很多文件(大约500-600个小文件),那么laravel如何处理如此大量的文件?系统是否会在文件上传时或者在后台继续运行?像一个队列

1 个答案:

答案 0 :(得分:3)

不,AWS S3不会为您提供在S3上解压缩文件的功能。

如果您在同一区域内有EC2实例,则将您的zip文件上传到EC2,然后将其移动S3解压缩。

在ec2和s3之间不收取费用,因此ec2可以处理解压缩,然后将其写入您的s3存储桶,无需额外的传输费用。

S3将为您提供存储空间。

编辑 - 将文件从EC2传输到S3

您可以在AWS CLI中使用以下命令。在你EC2

aws s3 cp myfolder s3://mybucket/myfolder --recursive

以下是它的参考。 http://aws.amazon.com/cli/

用于将文件从EC2复制到S3而不中断执行

  • 创建一个脚本,将文件从ec2传输到s3。并将文件上传到ec2。使用laravel队列来执行脚本。这样用户就不必等到文件传输完毕。 https://laravel.com/docs/5.1/queues