0

我一直在为 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)

我会错过什么?

4

1 回答 1

0

看起来很奇怪,但是在添加了存储桶策略之后,它似乎起作用了。我不确定这是否正确,heroku 文档没有说任何关于存储桶策略的内容......并且创建存储桶策略非常神秘!不喜欢。

也因为政策看起来像这样:

{
  "Version":"2008-10-17",
  "Statement":[{
    "Sid":"AddPerm",
        "Effect":"Allow",
      "Principal": {
            "AWS": "*"
         },
      "Action":["s3:GetObject"],
      "Resource":["arn:aws:s3:::bucket/*"
      ]
    }
  ]
}

本质上授予任何人访问权限。不确定授予任何人访问权限是否需要那么复杂?也许我什至不确定我是否想授予任何人访问权限……但也许需要如此?否则人们将如何从浏览器访问图像...

这里的问题太多了:(

于 2013-08-04T01:19:00.067 回答