Tag: django storage

如何设置Django的项目与Django的存储和亚马逊S3,但与静态文件和媒体文件不同的文件夹?

我正在configuration一个使用服务器文件系统来存储应用程序静态文件( STATIC_ROOT )和用户上传文件( MEDIA_ROOT )的Django项目。 我现在需要在亚马逊的S3上托pipe所有这些内容,所以我为此创build了一个存储桶。 使用django-storages与boto存储后端,我设法上传收集的静态到S3存储桶: MEDIA_ROOT = '/media/' STATIC_ROOT = '/static/' DEFAULT_FILE_STORAGE = 'storages.backends.s3boto.S3BotoStorage' AWS_ACCESS_KEY_ID = 'KEY_ID…' AWS_SECRET_ACCESS_KEY = 'ACCESS_KEY…' AWS_STORAGE_BUCKET_NAME = 'bucket-name' STATICFILES_STORAGE = 'storages.backends.s3boto.S3BotoStorage' 然后,我遇到了一个问题:在STATIC_ROOT中没有使用MEDIA_ROOT和STATIC_ROOT ,所以bucket root同时包含静态文件和用户上传的path。 那么我可以设置: S3_URL = 'http://s3.amazonaws.com/%s' % AWS_STORAGE_BUCKET_NAME STATIC_URL = S3_URL + STATIC_ROOT MEDIA_URL = 'S3_URL + MEDIA_ROOT 并在模板中使用这些设置,但是在使用django-storages存储在S3中时,没有静态/媒体文件的区别。 如何做到这一点? 谢谢!