Redisの問題? (アップグレード後にフォーラムが壊れた)

再構築すると、最後に [FAILED] というメッセージが表示されますか?

この失敗アラートの前の行を(できるだけ多く)見せていただけますか?

手がかりが見つかるはずです。

「いいね!」 2

最後に FAILED メッセージが表示されていないと思います。別のビルドを実行します。ありがとうございます!

「いいね!」 1

再構築が最後まで完了した場合、プラグインまたはテーマコンポーネントの破損が原因であると推測します。

ブラウザのコンソール(F12)を確認して、赤いアラートが表示されていないか確認してください。

また、プラグインやテーマなしでフォーラムを読み込むために [your-forum]/safe-mode を試すこともできます。

「いいね!」 1

いいえ、失敗はありません。ビルドは問題なく終了し、その後の Docker 実行も問題なく完了します。

「いいね!」 1

コンソールには何も表示されていません。セーフモードを試していますが、Chromeから「サイトにアクセスできません」というエラーが表示されます。しかし、ホームページや静的なメッセージには(通常の方法で)アクセスできます。

「いいね!」 1

現在の本番ログの末尾は次のとおりです。

/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/redis-4.5.1/lib/redis.rb:72:in `block in synchronize'
/usr/local/lib/ruby/2.7.0/monitor.rb:202:in `synchronize'
/usr/local/lib/ruby/2.7.0/monitor.rb:202:in `mon_synchronize'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/redis-4.5.1/lib/redis.rb:72:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/redis-4.5.1/lib/redis.rb:966:in `get'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/message_bus-3.3.8/lib/message_bus/backends/redis.rb:366:in `process_global_backlog'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/message_bus-3.3.8/lib/message_bus/backends/redis.rb:274:in `block in global_subscribe'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/message_bus-3.3.8/lib/message_bus/backends/redis.rb:287:in `global_subscribe'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/message_bus-3.3.8/lib/message_bus.rb:786:in `global_subscribe_thread'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/message_bus-3.3.8/lib/message_bus.rb:734:in `block in new_subscriber_thread'
「いいね!」 1

プラグインリストを共有していただけますか?または、確認できるようにフォーラムのURLをDMで送っていただけますか?

[your_forum]/logs に何か役立つ情報はありますか? [your_forum]/sidekiq にエラーリストはありますか?

問題を見つけるための情報がほとんどありません。

「いいね!」 1

まず、(非常に短い) プラグインリストを以下に示します。これらはすべて app.yml に記載されているプラグインです。

          - git clone https://github.com/discourse/docker_manager.git
          - git clone https://github.com/discourse/discourse-push-notifications.git
          - git clone https://github.com/davidtaylorhq/discourse-whos-online.git
「いいね!」 1

Who’s Online プラグインは9月に公式化されたと思います。更新されたリポジトリを使用して、それが役立つかどうか試してみてはどうでしょうか?

https://github.com/discourse/discourse-whos-online

「いいね!」 3

これについてのアップデートです。皆様からのご提案に感謝いたします。中核的な問題(1つを除く)は、どうやら(さらにテストが必要ですが)解決したようです。残っている明白な問題は、SSL証明書がもはや更新されず、ここで推奨されている手動更新プロセスさえも機能しないことです。「よく知られた」ディレクトリにある検証ファイルにLet’s Encryptがアクセスできないようです。これは以前はほぼ3年間正常に機能していました。したがって、HSTSがこの状況でChromeを完全にブロックするため、これは依然として問題です。

「いいね!」 1

散らかっているように見えます。

discourse-doctor を実行して、何か手がかりが得られるか試してみてはいかがでしょうか。私にもいくつか考えはありますが、サーバーにアクセスできないと、私のささやかなレベルでは、あなたを助けるのに時間がかかりすぎます。

もし私があなたの立場なら、すべて再インストールするでしょう。

1 バックアップ

cd /var/discourse
./launcher enter app
discourse backup

バックアップを sftp (sftp プロトコル、ポート 22、ホスト: サーバーの IP、ログイン: root、パスワード: root パスワード) 経由で取得します。

バックアップに uploads フォルダが含まれていることを確認してください。含まれていない場合は、ハードドライブにフォルダのローカルコピーを作成してください。

2 VPS の削除と再インストール、または別の VPS の使用

discourse setup install を使用します。すべてがうまくいけば、ログインしてバックアップをアップロードし、復元します。

(コマンドラインからバックアップを復元することもできます。こちらの方が速いです: Restore a backup from the command line)

これについて確信が持てない場合は、より資格のある人が現れるのを待つのが最善です :raised_hands:

「いいね!」 1

ありがとうございます。SSLの問題を解決するためにその方法を取りたいとは思いません。他の問題が解決されたことを考えると、もっと的を絞った解決策があるはずです。しかし、重ねて感謝いたします。

「いいね!」 2

/var/discourse/shared/standalone/ssl には、前回の試行で新しく書き込まれたキーと証明書があるようです。しかし、ログには明らかに検証エラーが表示されており、サイトは実際にはそれらを使用していません。また、これは単なる見た目の問題かもしれませんが、ログにはこの場合の正しいパスが表示されていません。たとえば、キーをインストールすると表示されるパスは次のようになります。

/shared/ssl/[site]_ecc.key

しかし、実際のパスは /shared/standalone/ssl です。

少なくとも奇妙に見えます。

典型的なエラーは次のとおりです。

[site]:検証エラー: http://[site]/.well-known/acme-challenge/[challenge string] の取得: 検証データの取得エラー

サイトはすべてのユーザーアクセスにログインが必要であることを指摘しておくべきですが、これは(数年間の運用中に)SSL証明書の更新では問題になりませんでした。

「いいね!」 1

他の問題が解決されたため、SSLに関する質問は別のスレッドに移動します。皆さん、ありがとうございました!

「いいね!」 1

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.