Error de certificado de no www a www

Hola comunidad,

Actualmente tengo el siguiente problema y estaría muy agradecido si alguien pudiera ayudarme a encontrar el enfoque correcto.

  1. He instalado Discourse en un servidor Ubuntu 21.10 en Vultr.
  2. He seguido la configuración predeterminada y ya he creado un certificado Let’s Encrypt (para www.example.com) durante la instalación.

Mi objetivo es que mi foro sea accesible solo a través de wwwwww.example.com y no example.com.

Situación actual:
http://example.com redirige correctamente (301) a https://www.example.com.
http://www.example.com redirige correctamente (301) a https://www.example.com.
https://example.com lanza un error de certificado y no se redirige a https://www.example.com correctamente (el certificado se emitió para www.example.com y no para example.com).

¿Cuál es el mejor enfoque para que https://example.com redirija a https://www.example.com y cómo puedo lograr mi objetivo?

Saludos,
Elmi

1 me gusta

Seguí este consejo y agregué una línea a mi app.yml:

Aunque no me importa si la gente me encuentra en el dominio raíz o en el subdominio www, así que no lo he probado con redirecciones.

2 Me gusta

Tenga cuidado con el contenido duplicado en los motores de búsqueda.

3 Me gusta

Esta es un área en la que no soy muy bueno. :slightly_smiling_face: ¿Cuál sería la forma recomendada? Actualmente tengo un registro A tanto para el dominio como para el subdominio www que resuelven a mi droplet de Digital Ocean.

2 Me gusta

La forma más sencilla es usar www.forcewww.com para eso. (Descargo de responsabilidad: ese es mi propio servicio)

4 Me gusta

Muchas gracias por tus comentarios @JammyDodger. Lo intentaré, aunque parece que aborda un problema ligeramente diferente. Pero tal vez funcione.

Es una buena práctica tener solo una versión de tu sitio. Duplicate Content: Why does it happen and how to fix issues - Moz

2 Me gusta

Este tipo de redirección es tan trivial en cualquier servidor web y una búsqueda en Google revela cómo hacerlo. ¿Por qué es diferente aquí?

2 Me gusta

Estoy bastante seguro de que si solicitas ambos certificados, se redirigirá como deseas. La solución forcewww.com es más fácil.

Porque está dentro de un contenedor Docker y ninguna de las soluciones dentro del host que encuentres en cualquier otro lugar probablemente sea de utilidad.

2 Me gusta

Solo una rápida actualización para hacerles saber lo que funcionó para mí.

Lo intenté, pero esto no funcionó para mí. Parecía que no se emitió ningún certificado adicional.

También intenté resolver mi problema siguiendo esta sugerencia, pero tampoco funcionó para mí.

Lo único que resolvió mi problema hasta ahora fue seguir las instrucciones aquí http://www.forcewww.com/

Sin embargo, creo que todavía no es una solución deseable, ya que depende de un servicio externo. Por supuesto, es gratuito, pero tendrás que encontrar una nueva solución una vez que este servicio deje de funcionar.
Espero que no me malinterpretes @michaeld, es realmente una solución agradable y fácil la que ofreces y la aprecio mucho.

Sería algo genial si pudieras decidir durante la instalación estándar ir solo con una versión www o no www para hacernos la vida un poco más fácil :slight_smile:

2 Me gusta

Aunque no lo he probado en el último mes, estoy bastante seguro de que funciona. Si no tenías tu DNS configurado correctamente y lo ejecutaste un montón de veces, entonces te limitaron la velocidad.

¿Quieres decir “y solicitar un certificado con ambos nombres de host?” Eso es demasiado difícil. La probabilidad de que simplemente rompa cosas para muchas personas que no saben cómo configurar DNS de esa manera es muy, muy alta.

2 Me gusta

Si creas un certificado para la versión de ápice y la versión www, tendrás ambas cubiertas. :smiley Como dijiste, el certificado no incluye tu dominio de ápice… de ahí el error.

Tus redirecciones deberían ser:

  • http://example.comhttps://example.com
  • http://www.example.comhttps://www.example.com.
  • Luego redirige https://example.comhttps://www.example.com (tu dominio preferido declarado).

Entonces, sin importar si alguien escribe el dominio de ápice o la versión www, aterrizarán en tu https://www.example.com sin errores. La mejor práctica es incluir tanto el ápice como la versión www en tu certificado. Solo asegúrate de que tu certificado modificado/nuevo sea el que esté sirviendo tu servidor, y no el antiguo.

Ya veo. Y ahora que lo mencionas, empezaré a recordar: esa fue la segunda razón por la que puse Discourse detrás de Nginx “normal”. La primera razón fue la necesidad de hacer algún tipo de filtrado. Bueno, mi solución no es nada elegante ni técnicamente exigente, pero no es tan popular en este círculo.

Debo decir que Docker no es una solución muy amigable si algo tan trivial debe hacerse utilizando un servicio web de terceros. De lo contrario, Docker debe ser muy útil, supongo, a menos que no se vuelva tan popular.

2 Me gusta

Gracias por el consejo @pfaffman. Lo intentaré de nuevo durante el fin de semana.

Y sobre el segundo tema. Entiendo tu punto, pero esto podría ser algo así como una configuración avanzada u opcional, porque es realmente crucial que el mismo contenido sea accesible solo a través de un dominio.

2 Me gusta

En realidad no lo es (a menos que Discourse en sí no funcione). Pero si te refieres a SEO y Google, este problema de subdominio no ha sido tan grave durante mucho tiempo. Google puede vivir con eso, porque solo hay un dominio: uno es un FQDN de stub y uno con www es el real.

1 me gusta

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.