Las rutas de carga tienen el puerto 80 pero el protocolo es https

Recientemente restauré mi instancia de Discourse de larga duración en una nueva.

Mi versión de Discourse es 3.6.0.beta2-latest.

Ahora tengo el problema de que las cargas no funcionan.

Cuando miro en la consola del navegador, veo muchos errores net::ERR_SSL_PROTOCOL_ERROR.

Cuando miro en la pestaña de red, veo que Chrome intenta obtener la URL

https://forum.robot.ba:80/uploads/default/optimized/4X/7/2/b/72be8d09005292d2f7ac37158b6d728a063f79ed_2_32x32.png

Si elimino manualmente el puerto 80 o cambio el protocolo de https a http, puedo abrir el enlace manualmente en una nueva ventana del navegador.

¿Alguna idea de por qué mi instancia de Discourse agrega :80 a las rutas de carga?

Busqué en la configuración del sitio “forzar https”, pero parece que no está activado o que esa configuración ya no existe.

¿Hay algo mal en mi archivo app.yml? Tengo las siguientes plantillas:

(Quiero usar letsencrypt ya que no tengo mi certificado SSL)

templates:

“templates/postgres.template.yml”

“templates/redis.template.yml”

“templates/web.template.yml”

“templates/web.ratelimited.template.yml”

Descomenta estas dos líneas si deseas agregar Lets Encrypt (https)

“templates/web.ssl.template.yml”

“templates/web.letsencrypt.ssl.template.yml”


Puedes consultar esta guía para configurar HTTPS con Let’s Encrypt:

Causa Posible: Configuración Oculta de "Puerto"

A veces, una configuración del sitio port oculta permanece en la base de datos después de una migración o restauración.
Esto puede hacer que Discourse añada un puerto incorrecto (como :80) a las URL HTTPS.

Para comprobarlo y solucionarlo:

  1. Entra en tu contenedor:
./launcher enter app
  1. Abre la consola de Rails:
rails c
  1. Comprueba el valor actual:
SiteSetting.port
  1. Si devuelve 80, límpialo:
SiteSetting.port = ""
  1. Luego, vuelve a hornear todas las publicaciones y activos para actualizar los enlaces:
Jobs.enqueue(:rebake_all_posts)
2 Me gusta