Google is now supporting link rel="canonical" relationships specified in HTTP headers. Evidently this was heavily requested, as the feature is in response to webmaster feedback.
To see the rel="canonical" HTTP header in action, let’s look at the scenario of a website offering a white paper both as an HTML page and as a downloadable PDF alternative, under these two URLs:
In this case, the webmaster can signal to Google that the canonical URL for the PDF download is the HTML document by using a rel="canonical" HTTP header when the PDF file is requested; for example:
GET /white-paper.pdf HTTP/1.1
(...rest of HTTP request headers...)
HTTP/1.1 200 OK
(... rest of HTTP response headers...)
Far also notes that the canonical tag in HTTP headers might help when a site serves the same file from multiple URLs, such as a content distribution network, when the webmaster wants to let Google know the preferred URL.
The support is for web search only.
Last month, Google's Matt Cutts discussed some reasons (which are few and far between) why Google might skip your canonical tags:
If you're unfamiliar with rel="canonical" altogether, watch our interview with Cutts from when it was first launched: