繁体   English   中英

适用于 PHP 的 AWS S3 SDK,上传到存储桶内的文件夹

[英]AWS S3 SDK for PHP, Uploading to folders inside a bucket

我刚刚开始使用适用于 PHP 的 AWS S3 SDK,我已经设法使用 Z2FEC392304A5C23AC138DA22847F9B7 将我的 PC 中的项目文件夹上传到 s3 存储桶,而不是使用 Z2FEC392304A5C23AC138DA22847F9B7Z 来指定一个文件夹将 image.jpg 上传到 imagebucket 的过程中,它会上传到“imagebucket”中名为 images 的文件夹。

aws s3中没有文件夹的概念。 它仅用于amazon AWS UI使用的显示目的。

实际上它将文件名作为键和数据存储为值。

如果您使用不同的文件夹存储5个文件,则它们不会创建5个文件夹。

来自文档:

public function uploadDirectory($directory, $bucket, $keyPrefix = null, array $options = array())

通过指定$ keyPrefix,可以将上载的对象放在Amazon S3存储桶中的虚拟文件夹下。 例如,如果$ bucket名称是my-bucket而$ keyPrefix是'testing /',那么您的文件将上传到测试/虚拟文件夹下的my-bucket: https://my-bucket.s3.amazonaws的.com /测试/ FILENAME.TXT

请参阅: http//docs.aws.amazon.com/aws-sdk-php/guide/latest/service-s3.html#uploading-a-directory-to-a-bucket

注意:Python 中的解决方案概念

在 setting.py 中设置媒体根目录:

MEDIA_ROOT = os.path.join (BASE_DIR, 'static/images/')

在models.py中,以下上传文件夹的方法对我有用:

image_variable = models.ImageField(null=True, default="{default_filename)", upload_to='uploads/') 

#upload_to 变量接受一个文件夹名称,并在第一次上传时创建它!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM