使用Django和AWS S3加载和提供静态文件和媒体文件

时间:2018-10-17 01:40:04

标签: python django amazon-s3 boto3 django-staticfiles

我正在尝试配置Django应用以将静态文件和媒体文件加载到AWS s3存储桶中。

我已经建立了以下文件结构:

settings.py:

AWS_ACCESS_KEY_ID = '<my_key>'
AWS_SECRET_ACCESS_KEY = '<my_access_key>'
AWS_STORAGE_BUCKET_NAME = '<my_bucket_name>'
AWS_S3_CUSTOM_DOMAIN = '%s.s3.amazonaws.com' % AWS_STORAGE_BUCKET_NAME
AWS_S3_OBJECT_PARAMETERS = {
    'CacheControl': 'max-age=86400',
}
AWS_LOCATION = 'static'

STATICFILES_DIRS = [
    os.path.join(BASE_DIR, 'static'),
]
STATIC_URL = 'https://%s/%s/' % (AWS_S3_CUSTOM_DOMAIN, AWS_LOCATION)
STATICFILES_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage'

我已经按照说明here在AWS上设置了用户和存储桶。

当我运行python3 manage.py collectstatic时,静态文件会在staticfiles文件夹中本地编译,而不是在AWS上。我正在使用Python 3。

0 个答案:

没有答案