我一直在为heroku上的朋友更新应用。 所有应用程序和heroku安装都是由其他人设置的。
所以我用github的新代码克隆了一个repo并做了我的更新。 当然,推动这些变革需要失败。 所以我发了
git push -f production heroku_branch:master
生产地点:
[remote "production"]
url = git@heroku.com:<our-app-name>.git
fetch = +refs/heads/*:refs/remotes/production/*
这似乎有效但现在所有图像都没有显示。 图像在S3上。 浏览器对所有图像说403。 但是,发布
heroku config
确认已设置所需的变量(AMAZON_ACCESS_KEY_ID,AMAZON_SECRET_ACCESS_KEY,S3_BUCKET_NAME)
我能错过什么?
答案 0 :(得分:0)
看起来很奇怪,但在添加了一个存储桶策略后,它似乎有效。 我不确定这是否可行,heroku文档没有说明存储桶策略......并且创建存储桶策略非常神秘!不喜欢。
另外因为政策看起来像这样:
{
"Version":"2008-10-17",
"Statement":[{
"Sid":"AddPerm",
"Effect":"Allow",
"Principal": {
"AWS": "*"
},
"Action":["s3:GetObject"],
"Resource":["arn:aws:s3:::bucket/*"
]
}
]
}
基本上授予任何人访问权限。不确定是否需要复制才能授予任何人访问权限?也许我甚至不确定是否要授予任何人访问权限......但也许它需要如此?否则人们将如何从浏览器访问图像...
这里有太多问题:(