S3 アップロード - PDFにCDNを使用しますか?

皆さん、こんにちは。

Discourse インスタンスで S3 アップロードを有効にし、Cloudfront CDN で設定しました。投稿に画像と PDF ファイルを添付ファイルとしてアップロードするテストを行ったところ、S3 バケットに正しくアップロードされました。しかし、両方が表示されているページを調べたところ、PDF は CDN リンクを使用していませんが、画像は使用していることがわかりました。

画像の場合、img src は CDN を指しており、ブラウザはこの CDN を使用してサムネイルを読み込みます。

PDF ファイルの場合、リンクの src は相対 URL (/uploads/short-url/xxxxxxxxxxxxx.pdf) を指しており、これは実際の S3 バケット(CDN ではない)のファイルにリダイレクトされるようです。

これは予期された動作でしょうか? CDN を使用するのは今回が初めてなので、通常はより大きなファイルは CDN 経由で提供しないのでしょうか? すべての古い投稿を S3 に移行する前に、すべての設定が正しく機能していることを確認したいだけです。

よろしくお願いします!

「いいね!」 4

興味深い観察ですね。今まで気づきませんでした。

いくつかテストを行いました。

既存のPDFアップロードの中には、CDNに直接リンクしているものもあります。

既存のPDFアップロードの中には、CDNを使用していないものもあります。

何が違うのでしょうか? :thinking:

わかりません :man_shrugging: もっと例を確認する必要があります。

自分で自分にDMを送り、新しい投稿をする簡単なテストを試しました。詳細にあるように /short-url/ が表示されます。

リンクをクリックすると、説明どおりS3バケットから直接取得されます。

一部の投稿がCDNを使用し、一部が使用しない理由はよくわかりませんが、あなたが目にしていることの一部を再現することはできます。

「いいね!」 1

投稿を再ベイクする必要があると思います。CDNを追加する前にアップロードされたものは自動的に更新されません。パターンに一致するすべての投稿を再ベイクする(すべてを再ベイクする方が簡単な場合があります)

「いいね!」 1

@pfaffman ありがとうございます。

すべての投稿を再ベイクしましたが、変更はありませんでした。再ベイク後、いくつかのテスト投稿を作成しました。私が(そして@Richieが見ていると思われるもの)見ていることを要約すると、次のようになります。

  • 投稿内の画像は、投稿内にインラインで表示される画像のCDNに正しくリンクしています。
  • ただし、画像の場合、「ダウンロード」リンク(画像をフルサイズで表示したときの右下)は、S3バケット(CDNではない)にリダイレクトされるショートURLにリンクしています。
  • PDFアップロードの場合、リンクはS3バケット(CDNではない)にリダイレクトされるショートURLにリンクしています。

ショートURLが使用される場合、リダイレクト時にCDNが使用されていないようです。

私のDiscourseセットアップでは、アップロードとバックアップの両方にS3を使用しています。既存のアップロードをすべてS3に移動したわけではありません(この問題が解決したら移動します)。また、セキュアアップロードは有効にしていません。

ありがとうございます!

「いいね!」 4

ご報告ありがとうございます。来週確認し、残っているCDNバイパスの不備を修正いたします。可能な限りCDNに到達するようにいたしますが、セキュアアップロードが有効になっている場合は、容易ではありません。

「いいね!」 5

他のファイルアップロードでもこの点に気づきました。

「いいね!」 1