the link full canonical attribute html seo canonical-link html-head

link - html title attribute



¿Los enlaces canónicos requieren un dominio completo? (5)

Quiero agregar enlaces canónicos a mis páginas, pero ¿necesito especificar el dominio, o lo hará una URL relativa?

En otras palabras, es:

<link rel="canonical" href="/item/1">

lo suficientemente bueno, o necesito usar:

<link rel="canonical" href="http://mydomain.com/item/1">


Actualización sobre mejores prácticas canónicas: rel="canonical" tiene soporte para dominios cruzados. La fuente de Google: https://webmasters.googleblog.com/2009/12/handling-legitimate-cross-domain.html

Además, la introducción de datos estructurados hace que el uso de los canónicos sea aún más estricto, ya que Google no recogerá el marcado JSON de fuentes no canónicas (¡un error que he cometido!).


De nuevo, Google dice esto:

https://support.google.com/webmasters/answer/139066?hl=en

Evite errores: utilice rutas absolutas en lugar de rutas relativas con el elemento de enlace rel="canonical" .

Use esta estructura: https://www.example.com/dresses/green/greendresss.html

No esta estructura: /dresses/green/greendress.html ).

Por ejemplo, estas son sus URL:

http://example.com/wordpress/seo-plugin/ http://example.com/wordpress/seo/seo-plugin/

Esto es para lo que rel=canonical fue inventado. Especialmente en muchos sistemas de comercio electrónico, esto (desafortunadamente) ocurre bastante a menudo, cuando un producto tiene varias URL diferentes según cómo llegaste allí. rel=canonical en el siguiente método:

Escoges una de tus dos páginas como la versión canónica. Debería ser la versión que crees que es la más importante. Si no le importa, elija el que tenga más enlaces o visitantes. Si todo eso es igual: lanza una moneda. Tienes que elegir.
Agregue un enlace rel=canonical de la página no canónica a la canónica. Por lo tanto, si seleccionamos la URL más corta como nuestra URL canónica, la otra URL se vinculará a la URL más corta como en la sección <head> de la página:

<link rel="canonical" href="http://example.com/wordpress/seo-plugin/">

Eso es. Nada más y nada menos.


Directamente desde Google:

http://support.google.com/webmasters/bin/answer.py?hl=en&answer=139394

¿Puede el enlace ser relativo o absoluto?
rel="canonical" se puede usar con enlaces relativos o absolutos, pero recomendamos utilizar enlaces absolutos para minimizar posibles confusiones o dificultades. Si su documento especifica un enlace base , cualquier enlace relativo será relativo a ese enlace base .


No hay nada especial sobre canonical . Es un tipo de enlace estándar, para usar con formas estándar de proporcionar enlaces (por ejemplo, el elemento de link ), por lo que puede especificar cualquier tipo de referencia de URL (absoluta, relativa, relativa al protocol-relative , en combinación con el elemento base , empty , ... )

RFC 6596 ( La relación de enlace canónico ) dice explícitamente :

El objetivo (canónico) IRI PUEDE:

Uno de los examples :

[...] o como un IRI relativo:

<link rel="canonical" href="page.php?item=purse">


Todos los atributos href son referencias de hipertexto, eso es lo que representa. Como tales, siempre son URI-Referencias, no URI, y pueden ser relativos.

Sin embargo, en este caso, se puede aprovechar el URI completo si puede, ya que sobrevivirá cualquier cosa que lo migre a otro dominio en el futuro (suponiendo que aún desea que el dominio enumerado sea el canónico), y puede incluso sobreviven algunos de los plagios automatizados más crudos :)

Sin embargo, ese beneficio es bastante leve si no estás usando activamente versiones no canónicas en otros dominios, por lo que no gastaría demasiado esfuerzo en ello.