Por qué y cómo implementar un nombre de dominio canónico

Es bastante frecuente que un cliente tenga el registro de más de un nombre de dominio para su sitio web, así como también que desee que su sitio esté accesible a través de cualquiera de sus dominios… sin embargo, disponibilizar el mismo contenido a través de distintas URL no es una buena idea, sino que siempre debemos preferir configurar un dominio como el principal.

A continuación, por qué es preferible utilizar solamente un dominio para tu sitio, y cómo configurarlo en distintos servidores web.

¿Por qué se debe utilizar un dominio como el principal?

Porque a Google no le gusta ver el mismo contenido en dos direcciones distintas

La razón que probablemente resulta más convincente a estas alturas es simplemente que utilizar más de una URL para mostrar el mismo contenido significa una penalización en los resultados de buscadores… sí, por supuesto eso significa que tu sitio va a salir más abajo si puedes ver lo mismo en http://www.dominio.com/noticia/ que en http://www.otro-dominio.com/noticia. En otras palabras: mantener tu sitio con más de un dominio es pésimo para tu SEO.

Hasta han inventado un nombre para convencerte de que uses sólo una URL para tus contenidos: la dirección “principal” es llamada URL canónica… ésa es la que importa y el resto ¡meh!

Por cierto, esto no aplica solamente cuando los dominios son radicalmente distintos, sino también cuando una opción es www.dominio.com y la otra dominio.comcon www, o sin www, debes elegir una.

Porque las peticiones AJAX entre distintos dominios no funcionan

… o al menos habría que decir “no funcionan del mismo modo que una petición AJAX hecha en el mismo dominio”.

Esto sucede ya que por seguridad los navegadores restringen las peticiones AJAX a un mismo dominio, y aunque existen formas de saltarse esta medida (en particular, implementar llamadas JSONP), considerarla dentro del desarrollo del proyecto va a agregar una complejidad que de otro modo es innecesaria… por supuesto que se puede considerar, pero agrega tiempo y ya se sabe, tiempo es dinero

Porque algunas de las fuentes utilizadas con font-face se restringen a un dominio

Esto también tiene sus grises: no son todas las fuentes, ni es en todos los navegadores.

Si utilizas solamente las fuentes disponibilizadas por Google, no tendrás problema pues sus fuentes no tienen restricciones por dominios.

Sin embargo, si tu diseño considera la utilización de otras tipografías como font-face y debes servirlas desde tu propio servicio, lo más probable es que el archivo de la fuente incorpore una protección (para evitar el hot-linking de fuentes sin autorización), que causará que en algunos navegadores la tipografía se muestre correctamente y en otros no:

… y cuando digo “algunos navegadores”, me refiero a… ¡no, no es Explorer! En realidad, el único que incorpora esta restricción es Firefox… pero claro, a estas alturas no lo usan sólo un par de geeks, por lo que no es muy sabio no considerarlo.

¿Cómo implementar redirecciones para usar dominios canónicos?

Afortunadamente, implementar la configuración necesaria para utiliza un dominio canónico es relativamente sencillo de ejecutar en los servidores web más usados. Debemos considerar lo siguiente:

  • La redirección debe ser transparente al usuario: si intenta acceder a dominio.com/noticias/lorem-ipsum-dolor-sit-amet/ y has preferido la versión “con www” de tu dominio, le debe llevar automáticamente a www.dominio.com/noticias/lorem-ipsum-dolor-sit-amet/ (¡no redirigir todas las direcciones bajo los dominios alternativos a la raíz del sitio!)
  • La redirección debe ser clara para los buscadores, lo que conseguimos enviando una respuesta HTTP con código 301 Permanent Redirect, es decir, indicando la URL canónica como definitiva

Veamos algunos ejemplos, considerando que nuestra URL canónica será www.domain.com:

… por supuesto, en cada caso debemos cerciorarnos que los módulos necesarios estén activados.