Discourse を使用してフォーラムを作成し、プライベート ドメイン forums-test.com をサーバー A に割り当てました。次に、サーバー B (test.com ドメイン) で Nginx を使用してリバース プロキシをセットアップしました。test.com/forums/ へのすべてのアクセスは、サーバー A の forums-test.com に渡されます。さらに、サーバー B でレスポンス書き換えを構成し、forums-test.com を指すすべてのリンクを test.com/forums/ に置き換えました。すべて正常に機能していますが、フォーラムの Google 認証を有効にしようとしたときに、Google が redirect_uri_mismatch エラーを返しました。このエラーは、Google が検証を完了した後、一時トークンを Discourse に渡すために test.com/forums/auth/google_oauth2/callback を呼び出そうとするために発生します。ただし、Discourse と Google の間のデータ交換中、Discourse はコールバック URL を forums-test.com/auth/google_oauth2/callback として送信するため、不一致が発生します。この発信リクエストはサーバー A から開始され、変更することはできません。この問題をどのように解決できますか?
Google Cloudの設定で、URLをforums-test.com/auth/google_oauth2/callbackに変更した場合はどうなりますか?
「いいね!」 1
「forums-test.com」というドメインはパブリックネットワークからアクセスできないため、Google Cloud では test.com/auth/google_oauth2/callback に設定しました。
「いいね!」 1
誰か手伝ってくれませんか?