mog*_*oli 0 django heroku amazon-s3 amazon-web-services
我正在尝试让在heroku中运行的Django应用程序可以访问s3存储桶中的文件(CSS JS文件)。
我认为我已经正确配置了settings.py。
我添加了cors和bucket策略,并将其设置为public。
最终,当我从heroku加载应用程序时,尝试访问静态文件时出现403错误。
铲斗政策:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AddPerm",
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": "s3:*",
"Resource": "arn:aws:s3:::NameOfBucket/*"
}
]
}
Run Code Online (Sandbox Code Playgroud)
CORs配置:
<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
<AllowedOrigin>*</AllowedOrigin>
<AllowedMethod>GET</AllowedMethod>
<MaxAgeSeconds>3000</MaxAgeSeconds>
<AllowedHeader>Authorization</AllowedHeader>
</CORSRule>
</CORSConfiguration>
Run Code Online (Sandbox Code Playgroud)
如果存储桶具有公共策略,则该选项称为“ 阻止公共和跨帐户访问”。如果为TRUE,则表示存储桶策略仅适用于存储桶所有者。
有关详细信息,请参阅:使用Amazon S3块公共访问-Amazon Simple Storage Service
这四个新设置可能会令人讨厌,因为它们是尝试使内容公开的额外障碍,但它们可能会通过防止意外公开数据而为许多组织节省很多尴尬。
| 归档时间: |
|
| 查看次数: |
1959 次 |
| 最近记录: |