投稿内の画像アップロードパスは、リベイクとリマップ後も変更されません

こんにちは皆さん、

Discourse のインストールを新しいサーバーに移行しています。ドメインは同じままですが、古い画像アップロードをすべて RCLONE を使って S3 の DigitalOcean Spaces に移動させました。Discourse をクリーンインストールし、画像なしのバックアップをアップロードしました。ここまでは順調で、すべての投稿が表示されています。

新しいアップロードは問題なく動作していますが、投稿内の古いアップロードを新しい場所へリダイレクトするのに苦労しています。

古い場所は domain[dot]com/uploads/ でした。
新しい場所は space.ams3.digitaloceanspaces[dot]com/ です。

以下を試しました:
discourse remap olddomain.com/uploads/ space.ams3.digitaloceanspaces.com/

また、以下も試しました:
rake posts:rebake
rake posts:rebake_match[“uploads”]

しかし、古い画像がリンクしているパスはまだ古いドメインのパスのままです。remap と rebake が何の効果も持っていないようです。何か見落としているのでしょうか?

データベース内の投稿を移行しましたか?

Uploads テーブルには、各アップロードの場所へのリンクが含まれており、更新が必要です。

詳しくは Set up file and image uploads to S3 をご覧ください。

「いいね!」 3

こんにちは、マイケルさん、

完全に理解できているかどうかわかりません。データベース内の投稿を移行しましたか?おそらくしていませんよね?私が取ったすべての手順は記載されています。これについてさらに詳しい情報はありませんか?

共有されたトピックを確認しました。現在、すべての画像が既にアップロードされている DigitalOcean 上の S3 を使用しています。「rake uploads:migrate_to_s3」を実行すると、すべてのファイル(300GB)が再アップロードされてしまうようなので、すでに 1:1 でファイルを移動済みのため、この部分はスキップしたいと考えています。必要なのはファイルのリンク付け直しだけです。しかし、このフォーラムではその問題に関する情報があまり見つかりません。トピック内に投稿を作成しましたので、何か見落としていることがないか、誰かご存知の方がいれば教えてください。

  • 追記 - 「migrate_to_s3」がまさに必要なものだったようですが、しかし……DigitalOcean の S3 にはあまりうまく機能しないようです。おっと。Migrate_to_s3 for Digital Ocean Spaces woes
「いいね!」 1

結局、シンプルなCloudflareのリダイレクトを作成しました。アバターを除き、すべて正常に動作しています。

「いいね!」 1