Mostrando diferentes configuraciones según diferentes dominios

Hola,

Tengo varios productos en línea, cada uno de los cuales me gustaría tener su propia comunidad en línea. Sin embargo, dado que estos productos son interoperables, muchos de mis clientes utilizan varios productos simultáneamente.

Teniendo esto en cuenta, quiero usar una única instancia de Discourse para todos mis productos, pero mostrar un tema diferente para la comunidad según el dominio utilizado para acceder a ella.

Por ejemplo:

  • app1 → muestra el logo y los colores de App1
  • app2 → muestra el logo y los colores de App2

Además, dado que todos los hilos deben etiquetarse según el nombre del producto, me gustaría ocultar los hilos con etiquetas de otros productos. Por ejemplo, ocultar #app1 si estás accediendo a app2.com.

Esto debería ocurrir a menos que el usuario opte por navegar por varias comunidades a la vez.

Podría usar cualquier ayuda; sin embargo, entiendo que algo así podría no estar disponible de inmediato. Como desarrollador, puedo crear un plugin y escribir código JavaScript adicional para que esto suceda.

Supongo que el primer obstáculo es permitir que la misma instancia de Discourse se ejecute en varios dominios. ¿Cómo empiezo con esto?

Tener la misma información en varios sitios es un error de SEO. No lo recomiendo. Tengo un componente de tema (creo que roto, pero lo arreglaré Pronto) que cambiará la página de inicio dependiendo del grupo en el que se encuentre alguien, para que puedas establecer su grupo según un campo personalizado que obtienes cuando crean su cuenta para establecer su página completa en la categoría de su producto favorito.

Si no te importa que tu sitio sea indexado, puedes mirar la plantilla web_only que redirige y añadir a tu yml para deshacer eso. Creo que Configurar la configuración multisitio con Let’s Encrypt y sin proxy inverso ofrece un ejemplo.