Esta es una guía how-to que te guiará a través del proceso de configuración de Cross-Origin Resource Sharing (CORS) en Discourse.
CORS es un mecanismo que permite que muchos recursos (por ejemplo, fuentes, JavaScript, etc.) en una página web se soliciten desde un dominio diferente al dominio de origen del recurso.
Así es como puedes configurar CORS en tu sitio de Discourse:
Prerrequisitos
Antes de comenzar, la variable de entorno DISCOURSE_ENABLE_CORS debe establecerse en true para habilitar CORS.
Para obtener ayuda con esto, consulta Cómo establecer variables de entorno.
Si estás en un sitio alojado por Discourse, este paso ya se ha realizado y no necesitas tomar ninguna medida adicional para configurarlo.
Acceder a la Configuración del Sitio
Ve a tu panel de administración de Discourse. Desde allí, navega a la pestaña “Configuración”.
Localizar la Configuración de CORS
En la pestaña “Configuración”, usa la barra de búsqueda y escribe cors origin. Deberías ver la siguiente configuración relacionada con CORS:
Esta configuración te permite especificar los dominios que pueden realizar solicitudes de origen cruzado a tu instancia de Discourse.
Debes ingresar los dominios exactos aquí, separados por un espacio. Evita usar un comodín (*) ya que esto puede suponer riesgos de seguridad.
Al agregar varios dominios aquí, cada URL debe estar separada. Por ejemplo:
Guardar Cambios
Después de haber realizado los cambios necesarios, no olvides hacer clic en el botón Guardar Cambios en la parte inferior de la página.
Notas Importantes
La implementación incorrecta de CORS (Cross-Origin Resource Sharing) puede introducir riesgos de seguridad potenciales. Aquí hay algunas cosas a tener en cuenta al habilitar CORS en tu sitio:
- Especificar dominios exactos: Usar comodines (*) en la configuración de CORS puede permitir que cualquier dominio interactúe con tu servidor, lo cual es un riesgo de seguridad significativo. Se recomienda especificar dominios exactos.
- Minimizar los datos expuestos: CORS debe configurarse para exponer solo los datos necesarios de dominios externos en los que confíes. No se recomienda permitir que sitios que no controlas tengan acceso CORS.
- Usar HTTPS: Cuando sea posible, evita permitir sitios que no sean HTTPS en tu configuración de CORS, ya que esto puede exponer datos en formato no cifrado.

