deadsea - 4:08 pm on Nov 19, 2012 (gmt 0)
I use this technique on my site. It really helps on development servers that end up getting crawled by googlebot. If I have a canonical pointing to the live site on every page, then Google never starts sending traffic to staging servers. (They are usually behind a firewall, too, but sometimes we need to make them accessible for beta testers and such.)
It also helps with parameters that get added for no reason. So if http://example.com/page.html has itself as a canonical, and googlebot finds it as http://example.com/page.html?session=xyzzy
the canonical takes care of the problem without your server even having to realize that there is a useless parameter on the url.