3

我正在将 Django 与 Amazon s3 与库一起使用(django-storages boto3)

具体来说,base.css 正在被提供,而 fonts.css 没有被提供(Err 403)。这发生在 Django 管理控制台中。我已经确认 fonts.css 在存储桶中

问题是这些文件没有查询字符串身份验证

# This is working
GET https://bucket-name.s3.amazonaws.com/static/admin/css/base.css?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AFD34GE4VTLUKQOTHAW7%2F20210726%2Fus-east-2%2Fs3%2Faws4_request&X-Amz-Date=20210726T193438Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=815bd068805f60f90c6acf27b24028424e85afbf7ba2939b51471cab2ba8e8b9

# This isn't working
GET https://bucket-name.s3.amazonaws.com/static/admin/css/fonts.css

几乎所有静态文件都在提供服务

  • fonts.css 不在 HTML 页面源代码中,可能是从未附加查询字符串身份验证的 JS 代码调用的
  • 此外,当我从 S3 转移到 django 默认存储时,它工作得非常好。
4

0 回答 0