S3 buckets containing periods not allowed

所以,我也想通过 Cloudflare 托管我的上传文件,使用 Wasabi 而不是 S3,因此无法使用 CloudFront。

我最终直接修改了数据库,并重启了 Discourse,问题就解决了。另外,如果存储桶仅设置为公开读取,那么 CDN 与 S3 之间的 HTTPS 连接真的重要吗?

UPDATE site_settings SET value = 'uploads.domain.tld' WHERE name = 's3_upload_bucket';

2 个赞

按照 howto 指南中的说明设置 DISCOURSE_S3_CDN 变量。

1 个赞

我可以轻松设置 CDN URL 并直接指向 Wasabi。但若要让其先经过 Cloudflare,唯一的办法是在我的域名上添加一个 CNAME 记录,指向 s3.wasabisys.com,此时存储桶名称必须采用 subdomain.your.domain 的格式。

例如,我无法使用名为 xyz-uploads 的存储桶,并通过 CNAME 指向 s3.wasabisys.com 将其置于 Cloudflare 之后。

2 个赞

在经历了许多挫折和搜索之后,我找到了这个话题,并惊讶地发现它创建于 2015 年,而且这个问题仍然存在?使用带有句点的 S3 存储桶并利用 S3 的静态托管功能,然后在前面加上 CloudFlare 和 SSL,这是一个有效的用例。除了 Discourse 目前阻止我们这样做之外,这种设置没有任何问题。

如果 Discourse 真的想强制所有其他用户保护自己免受 S3 存储桶名称中带有句点的 SSL 问题的影响,那么它是否至少可以提供一个链接到一些文档供他们自行学习,同时允许那些知道如何正确配置的人这样做?

2 个赞