python-Django存储AWS_QUERYSTRING_AUTH不起作用
作者:互联网
我一直在尝试解决此问题,但到目前为止我还无法独自解决.关于不希望在S3 url中进行身份验证的问题的反向讨论,有几个不同的文章.
我在我的settings.py中使用带有以下内容的Django-Storages:
AWS_STORAGE_BUCKET_NAME = 'testbucket'
AWS_ACCESS_KEY_ID = 'xxxxx'
AWS_SECRET_ACCESS_KEY = 'xxxxxx'
AWS_QUERYSTRING_AUTH = True
AWS_QUERYSTRING_EXPIRE = 3600'
from datetime import datetime, timedelta
AWS_HEADERS = {
'Expires': (datetime.now() + timedelta(days=365*10)).strftime('%a, %d %b %Y 00:00:00 GMT')
}
AWS_S3_SECURE_URLS = True
AWS_S3_CUSTOM_DOMAIN = '%s.s3.amazonaws.com' % AWS_STORAGE_BUCKET_NAME
MEDIA_URL = "https://%s/" % AWS_S3_CUSTOM_DOMAIN
DEFAULT_FILE_STORAGE = 'storages.backends.s3boto.S3BotoStorage'
保存或列出文件没有问题,但所有URL都没有身份验证查询字符串.
example of the url正在返回.
任何帮助深表感谢.
解决方法:
答案是django-storages查询字符串与自定义域不兼容.
标签:amazon-s3,boto,python,django 来源: https://codeday.me/bug/20191119/2037669.html