1

当我使用 {%static %} 模板从 AWS S3 提供静态文件时,我得到这种类型的 url: https://elasticbeanstalk-eu-west-1-2548513.s3.amazonaws.com/css/7aa4edf0c543.css?签名=lpSpJuyv55JwkjxGKnNVmfn5QKs%3D&Expires=1370880855&AWSAccessKeyId=AKIAIDOQ45S6OQCXGNYQ

那么签名每次都会改变。因此,当我使用带有离线压缩的 django_storages 时,该文件的密钥每次都在更改,因为它的名称正在更改,所以我收到错误消息:您启用了离线压缩,但离线清单中缺少密钥“4c18774209c3d10bb81ec7f466b17e21”。您可能需要运行“python manage.py compress”。

如果我不使用 {%static %} 模板,而是使用常量 URL,则不会发生此错误..

为什么 aws s3 有那种 URL?签名和 Expires 参数的意义何在?我将我的 aws s3 配置更改为发送过期标头和缓存控制 1 年,但是来自 url 的过期时间仅为一小时。

4

1 回答 1

2

尝试将此添加到您的设置中。

它应该停止将获取参数添加到 url。

AWS_QUERYSTRING_AUTH = False
于 2013-06-10T15:39:56.733 回答