カスタムアバターをアップロードしようとしましたが、正常にアップロードできましたが、https://example.com/user_avatar/example.com/example_user/96/11_2.png をリクエストすると、500エラーが返されました。デフォルトの匿名アバターではこのエラーはありません。
最新の master Discourse ブランチです。
Cloudflare R2 を S3 ストレージとして使用しています。
カスタムアバターをアップロードしようとしましたが、正常にアップロードできましたが、https://example.com/user_avatar/example.com/example_user/96/11_2.png をリクエストすると、500エラーが返されました。デフォルトの匿名アバターではこのエラーはありません。
最新の master Discourse ブランチです。
Cloudflare R2 を S3 ストレージとして使用しています。
unsupported-install を利用していますか?
いずれにしても、500だけでは十分な情報ではありません。関連するログ情報を共有していただければ、誰かがお手伝いできるかもしれません。
もちろんです。ところで、アップロードコンテンツの保存にはCloudflare R2(S3互換)を使用しました。バケット内のファイルを確認したところ、アバターファイルは実際に存在していましたが、クライアントはhttps://example.com/user_avatar/example.com/example_user/96/11_2.pngでアクセスできませんでした。非常に奇妙です。
production.log でこの行を見つけました。
Processing by UserAvatarsController#show as PNG
Parameters: {"hostname" => "echonet.icu", "username" => "where", "size" => "288", "version" => "12_2"}
Completed 418 in 599ms (Views: 4.1ms | ActiveRecord: 0.0ms (0 queries, 0 cached) | GC: 0.4ms)
これに関連している可能性があります。
最新バージョンでのS3の問題かもしれません
。
現在のナイトリー版だけの問題であることを願っています。 プロキシを設定することで解決しました。
@MoRanYueさん、どのように解決したか詳しく教えていただけますか?
私も同じ問題を抱えています。
ありがとうございます。
@avidseeker
OSSサービスを使用している際に、サーバーからアクセスできない場合があります。例えば、中国にいて、Cloudflare R2へのサーバーの接続がローカルISPによってブロックされている場合などです。クライアントがカスタムアバターリソースを取得しようとすると、サーバーはOSSからそれを取得する必要がありますが、失敗してクライアントに500を返します。
私の場合は、OSSサービスにアクセスできるプロキシサーバーにHTTP_PROXYとHTTPS_PROXYという2つの環境変数を設定しました。Discourseを標準インストールした場合、app.xmlにenvというフィールドがあり、そこにこれらの2つの変数を追加してから実行できます。私は非サポートのインストールを使用し、SystemdでDiscourseを管理しているため、.serviceファイルに2つのEnvironmentパラメータを追加しました。
あなたの国にはネットワーク検閲システムがありますか?もしあれば、何をすべきか既に理解していると仮定できます。もしなければ、OSSサービスのオンラインステータスとS3に関する設定を確認してください。
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.