Site icon Search Engine People Blog

How To Implement rel=”canonical” HTTP Headers

Google recently announced their support for rel=canonical HTTP headers. This can come in handy if you see duplication of content across different file types.

It allows webmasters to assign a file a tag that references an HTML document as the real (canonical) URL. This tag will come in hand for any website that currently offers the information on their HTML web pages as a downloadable PDF. For instance, a holiday company may be offering information on Australian holidays as both an HTML page and as a downloadable brochure in PDF format:

http://www.yoursite.com/australian-holidays.html

Click to access australian-holidays.pdf

In this instance, with both files serving up the same content, a sever-side canonical tag could be applied.

All very well and good, but how do you apply it? If youre using ASP.net, Classic ASP or PHP web pages, heres how:

ASP.Net C#:

<%Response.AddHeader(@Link,@< http://www.yoursite.com/>; rel="canonical");%>

ASP VBScript:

<%Response.AddHeader Link,< http://www.yoursite.com/>; rel="canonical"%>

PHP:

<?php header(Link: <http://www.yoursite.com/>; rel=canonical");?>

When the web page is requested the server will respond with a 200 status as well as the link header telling Google that the page is a canonical of the URL specified.