WP SSO + Discourse Multisite

Tengo 2 instancias separadas de Discourse y quería unirlas en una única instancia multisitio.

Seguí la guía de multisitio para configurar una nueva base de datos y la compilación se realizó correctamente. El problema es que, al navegar al dominio de la instancia B, se redirige a la instancia A (la original vinculada al SSO de WordPress). Esto significa que:

  1. al ir a https://instanceb.discourse
  2. en lugar de redirigir a https://instancea.discourse
  3. lo cual luego redirige a la página de inicio de sesión de WordPress.

¿Cómo hago que aparezca el nuevo contenedor multisitio?

No me importa si el segundo contenedor también necesita SSO; no se había configurado antes.

Como no puedo cargar la instancia B, no puedo configurarla ni importar la configuración.

Estoy utilizando un proxy inverso de nginx para acceder a ambas instancias.

Agradezco cualquier ayuda.

Hola Tim,

Este caso es más bien una pregunta sobre Discourse multisitio, ya que tu problema parece estar relacionado con la relación entre tus dos instancias de Discourse multisitio y posiblemente con el enrutamiento que has configurado entre ellas. El SSO de WordPress no es el problema aquí, por lo que he reclasificado tu tema a Support.

Me gustaría señalar la siguiente advertencia en el howto de multisitio de Discourse:

Aunque el modo multisitio es compatible con la aplicación Discourse, se trata de una configuración avanzada para administradores de sistemas. Si no sabes lo que estás haciendo, no configures el modo multisitio. El equipo de Discourse no puede ofrecer soporte para la configuración de multisitio.

Dado que nuestro enfoque en Support se centra más en el plugin de WordPress en sí, y yo mismo no soy un experto en multisitio de Discourse, tu mejor opción podría ser consultar si alguien de la comunidad puede orientarte en la dirección correcta, o contratar a alguien para que te ayude en Marketplace.

2 Me gusta

Eso suena a un problema de multisitio. ¿Qué guía seguiste?

Seguí esta guía:

Mi mejor suposición es que tienes tu proxy inverso mal configurado y está redirigiendo el sitio 2 al sitio 1, o quizás lo hizo en algún momento y tu navegador guardó en caché la redirección 301.

Estoy usando la configuración estándar del proxy nginx. El único cambio que hice fue agregar instanceb en server_name para que el tráfico se enrute al contenedor. ¿Existe una forma diferente de hacer esto con Discourse multisitio?

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; # aumentado desde el valor predeterminado de 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;
    }
}