Richie
(Richie Rich)
1
Discourse 2.7.0.beta1 的管理员菜单中显示的警告可能存在一个 bug(53f4d54f23)。
该警告内容如下:
- 服务器已配置为将文件上传至 S3,但以下至少一项设置未配置:s3_access_key_id、s3_secret_access_key、s3_use_iam_profile 或 s3_upload_bucket。请前往 站点设置 并更新相关设置。点击此处了解“如何设置 S3 图片上传”。
在我的设置中,以下项已配置:
- s3_access_key_id
- s3_secret_access_key
- s3_upload_bucket
而以下项未配置,可能是触发警告的原因:
该设置的说明如下:
使用 AWS EC2 实例角色 授予对 S3 存储桶的访问权限。注意:启用此选项要求 Discourse 运行在正确配置的 EC2 实例中,并且会覆盖“s3 access key id”和“s3 secret access key”设置。
然而,我的 Discourse 并未运行在正确配置的 EC2 实例中,因此我不希望它覆盖“s3 access key id”和“s3 secret access key”设置。我的 Discourse 运行在 Digital Ocean 上。
因此,对我来说,此选项正确处于未启用状态。
我认为这意味着在此场景下,管理员面板上显示的警告不应出现?
我的 S3 上传功能一直运行正常,多年来未进行任何更改:+1:t2:
3 个赞
Falco
(Falco)
2
昨天我合并了一条针对未使用 CDN 的 S3 用户的新警告。看来我把错误提示写错了
。
将通过以下内容修复:
@Richie,你是故意不使用 CDN 而直接使用 S3 吗?我添加这条警告是因为我们在 Meta 收到了多个帖子,反映站点管理员因出站流量费用而向 S3 支付了过高的费用。
7 个赞
Richie
(Richie Rich)
3
我的 s3 cdn url 设置目前为空,所以是的,我可能确实如此。
感谢修复这个错误 
2 个赞
Richie
(Richie Rich)
4
不过……
这是否意味着 CDN 警告现在会一直显示在 Discourse 管理面板中,而不是仅在设置 CDN 时显示?
即使我选择不设置 CDN,也会如此吗?
2 个赞
Falco
(Falco)
5
是的,这个观点是:在生产环境中直接使用 S3 而不搭配 CDN 是一个明显的错误。任何为生产实例支付 S3 费用的用户,都有能力以更低的成本同时支付 S3 和 CDN 的费用。
如果你因某种原因不得不使用不带 CDN 的 S3,一个可行的变通方法是将 s3 cdn url 设置为存储桶的 URL,这样它就相当于一个空操作(noop)。
4 个赞
Richie
(Richie Rich)
6
有意思。
好的,谢谢 @Falco。我会在接下来的一两天内安装上述修复方案,如果遇到问题,我会再开一个新的 Support 帖子。
3 个赞