バージョン v2.2.0.beta3 +153
内部 S3 ゲートウェイとして MinIO を使用しています。しかし、画像をアップロードすると、CDN URL が使用されません。
例えば、アバターをアップロードすると、CDN URL の代わりに内部 IP が使用され、その結果アバターが表示されません。
バージョン v2.2.0.beta3 +153
内部 S3 ゲートウェイとして MinIO を使用しています。しかし、画像をアップロードすると、CDN URL が使用されません。
例えば、アバターをアップロードすると、CDN URL の代わりに内部 IP が使用され、その結果アバターが表示されません。
Does the IP discourse presents as the CDN match the IP you’re using for Minio? Does the public DNS name for Minio have a certificate?
I am using minio on internal upload only. For example, discourse on 192.168.1.5 and minio on 192.168.1.6:9000. When I browse in Chrome, it tries to request 192.168.1.6:9000 which will not work.
I expect it to load from cdn.example.com which like image in post.
So you’ve followed the official guide for configuring Minio with Discourse?
How does your setup differ?
Yes, I followed the guide. It works on images upload in posts but not system upload. For example avatar, logo and icon.
All the images in posts use cdn.example.com but system upload use 192.168.1.6:9000.
This problem seems to happen here as well. If you upload an image, the one you see in preview is discourse-meta.s3.dualstack.us-west-1.amazonaws.com instead of meta-s3-cdn.freetls.fastly.net.
Yeah this is indeed the case, preview does not use CDN, hiding the S3 origin from clients is an unsupported setup atm, longer term I expect even more trouble when we support direct to s3 uploads
I also found out the images uploaded are allowed to view by public. If there are future updates on this, please do not set it if CDN is set. This is because it bypass the bucket policy to enforce all objects must go through CDN.
だから、まだ混乱しています…「S3 CDN URL」に CloudFront の URL を設定していても、アップロードされた画像(プレビュー内か否かに関わらず)は s3.dualstack の URL を使用し、私の CloudFront/CDN の URL は使用されていません。
何が不足しているのでしょうか?
私の設定は以下の通りです:
Preformatted text
これは機能ではなくバグのように思えます。なぜなら、S3 バケットに対してパブリック ACL を設定することが「必須」だからです。この問題は数年前にここで報告されましたが、未だに修正されていません:S3 CDN URL ignored when uploading into posts