Last week I had a site that Google was linking to securely, ie the https://www… instead of http://www. I had a SSL cert set up on the site, but not all the content was being served over https, which was causing errors. So if you searched for my site on Google and clicked on the link that came up, you were seeing a broken site!

I figured there’d be a setting in Google Webmaster Tools that would allow you to specify the preferred protocol for your site. But there’s not. How did Google even know to use https in the first place?

To see if Google has indexed any of your urls securely, perform this search: “site:www.mysite.com -inurl:http”. I had several showing up.

It turns out that once Google knows you have https (all it takes is one link), they’ll prefer it over http and update all of their references to you. You can use a 301 redirect, but that seems like overkill. I searched and searched for a better solution, and finally found a solution to tell Google I wanted to use the non-secure version of our site as our home page.

The solution is this: Use the canonical tag on all your pages, pointing to your http page. That’s it. If your site is a wordpress blog, there are some plugins that can help you do this.

It’ll take a couple days for Google to recrawl you and honor your preferred urls specified in your canonicals, but it’ll work.