He configurado Discourse en community.website.com y WordPress en website.com. Estoy usando Caddy como proxy inverso con Let’s Encrypt gestionando SSL. Después de algunos obstáculos iniciales, logré que todo funcionara sin problemas, incluyendo SSL y las redirecciones. Elegí esta configuración después de numerosos intentos fallidos de otras formas de hacer funcionar el proxy inverso. El problema subyacente para mí fue la falta de experiencia previa con Docker o Discourse.
También entiendo que puede haber problemas con el caché y Discourse, así que quizás menos sea mejor o algunas reglas para evitar problemas.
Caddy: Gestiona el proxy inverso y el SSL de Let’s Encrypt.
Cloudflare: Configurando para DNS, firewall y CDN.
El Desafío:
Cuando uso Cloudflare DNS sin proxy (solo para DNS), todo funciona perfectamente: Caddy gestiona el SSL de Let’s Encrypt y no hay problemas.
Sin embargo, al cambiar a Cloudflare DNS con proxy habilitado, la conexión falla con un error de “Sitio web no disponible” de Cloudflare. He actualizado mi Caddyfile para usar http:// tanto para el dominio raíz como para los subdominios y he probado múltiples configuraciones de SSL en Cloudflare (Flexible, Full y Full Strict), pero no he podido establecer una conexión.
La pregunta es, ¿cómo debería configurar esto para que Caddy, Cloudflare con SSL funcionen bien con Discourse?
Si estás utilizando los servicios de CDN y seguridad de Cloudflare, no necesitas configurar tu propio certificado SSL en tu servidor de origen. En su lugar, navega a la configuración de SSL/TLS dentro de tu panel de Cloudflare y crea un ‘Certificado de Origen’. Este certificado asegurará el tráfico que se reenvía desde tu servidor de origen a Cloudflare. Instala este Certificado de Origen en tu servidor de origen y todo estará operativo.
Paso 5: Configurar Discourse para usar el certificado SSL
Edite la configuración de NGINX de Discourse para usar el certificado SSL. Normalmente, este archivo se encuentra en /etc/nginx/conf.d/discourse.conf o dentro del directorio /var/discourse/containers/ si se usa Docker.
Modifique o agregue las siguientes líneas al bloque server:
Estoy intentando configurar el servidor de origen de CF y me he quedado atascado en esta etapa con la ubicación del archivo discourse.conf para poder hacer las modificaciones necesarias. ¿Dónde suele estar?
Las instrucciones no son totalmente correctas, hasta donde yo sé, porque no encontré nada en esas ubicaciones.