Sobre la URL canónica

En los últimos días hubo muchas discusiones sobre las URL’s canónicas, debido a la ultima actualización del índice de Google.

Para poder comprender realmente el problema, primero es necesario entender exactamente el termino.

Definición
Una URL (Uniform Resource Locator) canónica es una denominación unívoca que describe un nodo en la estructura jerárquica de los DNS (Domain Name Server) en Internet.

En otras palabras: es el nombre propio de cada una de las páginas webs en Internet. La construcción de las URL’s se realiza de acuerdo a la nomenclatura definida y jerarquizada

{protocolo}://{directorio o archivo}:{numero de puerto TCP}.

Por ejemplo, si la página web se llama ejemplo.html y está en el dominio mi-dominio.com entonces la URL canónica será:

http://mi-dominio.com/ejemplo.html

Pero en el mundo del Internet, se hizo costumbre colocar delante del nombre del archivo www para remarcar de que se tratá de una página WEB (www= World Wide Web), lo cual ahora ya se ha hecho un quasi estandard. Por este motivo, la mayoría de los servidores Web permiten seleccionar una página mediante las dos denominaciones.

En nuestro ejemplo:
http://mi-dominio.com/ejemplo.html
y
http://www.mi-dominio.com/ejemplo.html
mostrarían la misma página.

Google y las URL’s canonicas
Debido a que Google escanea todo lo que encuentra en su camino, en caso de que por algún motivo la web tenga algun enlace de la forma http://mi-dominio.com, es decir sin www, también va ha tratar de indexarla como la web clasica http://www.mi-dominio.com.

Ahora bien, como Google últimamente ha cambiado sus algoritmos para detectar contenido duplicado, entonces Google al tener dos copias de cada página de la web, tiene que decidirse por una de las ellas. La primera mantiene su ranking y la otra es castigada y relegada a las ultimas posiciones.

Como detectar si mi web sufre de este problema?
Una forma de detectar si Google ha indexado las dos variantes de las URL’s es haciendo la siguiente consulta:

site:www.mi-dominio.com –www

En caso de que no aparezca ningún resultado, entonces Google no ha indexado a http://mi-dominio.com

El test inverso seria

site:http://mi-dominio.com

Esta búsqueda muestra todas las páginas que han sido indexadas sin www.

Como se puede solucionar el problema?
Actualmente Google esta tratando de resolver este problema con sus actualizaciones, pero lamentablemente hasta ahora sin mucho éxito.

Este problema se puede solucionar desde el servidor web, redireccionando la URL http://mi-dominio.com a la dirección clásica.

Para esto, el servidor debe permitir el uso de rewrite_mode. En el archivo .htaccess, que se encuentra en la raíz, se agregan las siguientes lineas:

RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.mi-dominio\.com$
RewriteRule ^(.*)$ http://www. mi-dominio.com/$1 [L,R=301]

22 comentarios en “Sobre la URL canónica

  1. site:www.mi-dominio.com –www

    En caso de que no aparezca ningún resultado, entonces Google no ha indexado a http://mi-dominio.com

    El test inverso seria

    site:http://mi-dominio.com
    ————

    Vamos a ver… yo uso siempre la dirección sin las www, si intetas entrar con ellas te redirige el servidor a la misma página sin ellas.
    Haciendo esas pruebas, con la primera no me da resultados, por lo que según pones no la ha indexado. Pero con la 2º prueba me dan mas de 900 enlaces.
    Y mi web tiene PR 3 y 4.

    Creo que he entendido mal la explicación.

  2. Parece que la opción -www ya no esta funciondo…

    De todas maneras, con la segunda busqueda también puedes obtener la lista de las páginas indexadas sin www.

  3. Y no me ha quedado claro si es mejor tener la web sin las www o con ellas.
    Ahora con php o desde el servidor es factible que si entran a http://www.xxx.com/1.php se rediriga a xxx.com/1.php y viceversa.

  4. NoSetup.org,

    Siempre es mejor usar la forma clasica, es decir http://www.mi-dominio.com

    Si, la redirección también se puede hacer con PHP, pero la solución en rewrite_mode es generica. Es decir, que cualquier URL sin www será siempre direccionada a la URL con www. En PHP, esto se tendria que hacer para cada una de las páginas.

  5. Pues no lo sé… si miramos barrapunto o su hermano mayor usan la forma sin las www.

  6. agentia,

    De todas maneras debes elegir solo una forma. De lo contario Google encontrará contenido duplicado y penalizará tu web.

    Personalmente, a mi me gusta más las urls con www.

  7. Hola amigos, en realidad esto ya no es un problema… Google en sus herramientas para web master (donde esta Google sitemaps), en la pestaña diagnostico existe una sección llamada «dominio preferido» donde se puede elegir la URL que deseemos, Saludos
    Ricardo

  8. Ricardo,
    La opción de Google en Google Webmasyer Cental ya existe hace varios meses, pero no es la mejor solución para resolver el problema, ya que otros buscadores como Search Live, Yahoo!, etc. también van a tener el mismo problema de decidir que URL tomar: la con www o la sin www.

    Por eso, siempre se mejor usar el redireccionamiento de la URL.

  9. Creo que el google deberia no coger como contenido duplicado las url con www y sin www porque es algo ya generico creo que deberia tomarlo como la misma y no penalizarlo

  10. Croquetilla:
    La dirección de una página web siempre debería ser univoca pero lamentablemente los servidores web permiten por defecto el acceso a las páginas mediante las dos formas.

    Y bueno, Google se ha encontrado con esto al tratar de evitar contenidos duplicados.

  11. Si, debes excluir la página secundaria, en tu caso /index.php en robots.txt o redireccionarla a la principal con un 301, para que Google no use sus filtros de contenidos duplicados.

  12. ok gracias por la respuesta,, pero si no tengo acceso a .htaccess, se puede hacer una redireccion 301 en la pagina index.php a la pagina principal???

  13. Creo que si, pero vas ha tener que agregar algún código en PHP, en el archivo index.php

    Debes revisar la URI, y si que es index.php la redicreccionas al dominio, aunque después el archivo index.php será nuevamente ejecutado…

    Espero que me entiendas 🙂

Los comentarios están cerrados.