使用SSL在django上进行boto存储的URL格式

时间:2013-08-31 00:49:06

标签: django amazon-s3 boto

我正在尝试让Boto将我的网址格式化为://s3.amazonaws.com/BUCKETNAME/FILEPATH/,但它总是返回//BUCKETNAME/s3.amazonaws.com/FILEPATH。我发现了一些关于CallingFormat(http://boto.s3.amazonaws.com/ref/s3.html)的内容,但我不知道如何处理它。

然后我有:

STATICFILES_STORAGE = 'storages.backends.s3boto.S3BotoStorage'

http://django-storages.readthedocs.org/en/latest/backends/amazon-S3.html说你可以设置一个设置AWS_CALLING_FORMAT来指定我想要的东西,但我似乎没有得到它。

使用通常的模板在模板中生成URL:

{% load staticfiles %}
{% static 'FILEPATH' %}

1 个答案:

答案 0 :(得分:9)

未经测试,但based on the source,我认为你想要的是:

AWS_S3_CALLING_FORMAT = boto.s3.connection.OrdinaryCallingFormat()

(OC,您需要在上面某处import boto.s3.connection

请注意设置名称 - 它与django-storages文档中的名称不匹配。

django-storages文档似乎更倾向于简单的s3后端,这是一个耻辱,boto一个更好。

如果它不起作用,还要确保你在1.1.8 - 不知道哪个版本开始支持这个,但是s3boto后端在年初经历了some big changes,这不会在2012年发布的django-storages上工作。