WP SSO + Discourse Multisite

Discourse のインスタンスが 2 つあり、それらを単一のマルチサイトインスタンスに統合したいと考えています。

マルチサイトガイドに従って新しいデータベースを設定し、ビルドは正常に完了しました。しかし、インスタンス B のドメインにアクセスすると、インスタンス A(元々 WordPress SSO に紐付いているもの)にリダイレクトされてしまいます。つまり、以下のようになります。

  1. https://instanceb.discourse にアクセス
  2. https://instancea.discourse にリダイレクトされる
  3. さらに WordPress のログインページにリダイレクトされる

新しいマルチサイトコンテナを表示させるにはどうすればよいでしょうか?

2 つ目のコンテナにも SSO が必要でも構いません(以前は設定されていませんでした)。

インスタンス B が読み込めないため、設定や設定のインポートができません。

両方のインスタンスにはリバース Nginx プロキシを使用してアクセスしています。

ご助言をいただければ幸いです。

ティムさん、こんにちは。

これは Discourse のマルチサイトに関するご質問ですね。お困りの点は、2 つの Discourse マルチサイトインスタンス間の関係性、あるいはそれら間で設定されているルーティングにあるようです。Wordpress SSO は原因ではないため、トピックを Support に再分類しました。

Discourse のマルチサイトに関する howto には、以下の警告が記載されています。

Discourse アプリケーションではマルチサイトがサポートされていますが、これは高度なシステム管理者向けの設定です。ご自身の設定内容がわからない場合は、マルチサイトを構築しないでください。Discourse チームはマルチサイトの設定サポートを提供できません。

Support > WordPress では主に Wordpress プラグイン自体に焦点を当てており、私自身も Discourse マルチサイトの専門家ではありません。そのため、コミュニティの誰かに正しい方向へ導いてもらうか、Marketplace で専門家をお雇いしてサポートを受けるのが最善策かもしれません。

「いいね!」 2

それはマルチサイト関連の問題のようです。どのガイドを参照されましたか?

このガイドに従いました:

私の推測では、リバースプロキシの設定が誤っており、サイト2からサイト1へリダイレクトされているか、あるいは過去にそのような設定があり、ブラウザが301リダイレクトをキャッシュしている可能性があります。

標準の nginx プロキシ設定を使用しています。コンテナへのトラフィックルーティングのため、server_name に instanceb を追加したのみです。Discourse のマルチサイト機能で、これとは異なる方法で行うことは可能でしょうか?

server {
    listen 443 ssl http2; listen [::]:443 ssl http2;
    server_name instancea.mydomain.com instanceb.mydomain.com

    ssl on;

        ssl_certificate /var/www/vhosts/mydomain.com.csr;
        ssl_certificate_key /var/www/vhosts/mydomain.com.key;

    ssl_session_tickets off;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:ECDHE-RSA-DES-CBC3-SHA:ECDHE-ECDSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA;

    http2_idle_timeout 5m; # デフォルトの 3m から延長

    location / {
        proxy_pass http://unix:/var/discourse/shared/standalone/nginx.http.sock;
        proxy_set_header Host $http_host;
        proxy_http_version 1.1;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto https;

  proxy_connect_timeout       600;
  proxy_send_timeout          600;
  proxy_read_timeout          600;
  send_timeout                600;
    }
}