tags:

views:

52

answers:

3

In the website I am working on, there is a product page with 8 tabs on it, showing different aspects of the product. There are quick links on other pages within the site that take you to the page and to a specific link specified by a query string.

For example the base page would be www.example.com/Product1. And then there are links like this:

www.example.com/Product1?tab=CADDrawing

www.example.com/Product1?tab=Schematics

www.example.com/Product1?tab=Reviews

My concern is that Google sees each of these links as a different URL but they aren't and the data on the page is 100% the same. Is there any easy way to make it so Google either knows that www.example.com/Product1 is the base page or doesn't follow the links with Query Strings?

I thought about using rel="nofollow" but that seems like it would actually hurt my page ranking. Most of the websites, including Googles on webmaster pages, is unclear.

The other option is to add the rel="canonical" to the pages that have a query string but not to the base page. Does that succeed in stopping all of the noisy links?

A: 

I think HiddenField can help you

Matin Habibi
+1  A: 

Using a link tag with a canonical URL in the head of the product page should do the trick:

<link rel="canonical" href="www.example.com/Product1" />
Eric Petroelje
What page(s) would I want this on. Every one of them with a Query String, all of them, or the one without a Query String?
RandomBen
@RandomBen - You would put this on the product page itself, not the pages that link to it. All it does is tell Google "this page could be linked to in multiple ways, but this is the preferred url for the page"
Eric Petroelje
@Eric - Right but do I put it on the page with this URL www.example.com/Product1?tab=CADDrawing or this one www.example.com/Product1 or both?
RandomBen
@RandomBen - Sorry, I assumed they were the same (aspx) page. If they aren't, you would want to put it on all of them.
Eric Petroelje
A: 

There is a base-tag in html:

<head>
  <base>www.example.com/Product1</base>
</head>

Maybe that will indicate to google that its all the same page? This is just a wild assumption though, no idea how google will handle it.

inflagranti
`base` is actually a very dangerous tag, as many user agents have no clue as to how to handle it, resulting in (sometimes) DoS attacks on your webserver.
ErikHeemskerk
I just read up on the base tag and this is what I found:<BASE ...> tells the browser to pretend that the current page is located at some URL other than where the browser found it. Any relative reference will be calculated from the URL given by <BASE HREF="..."> instead of the actual URL. <BASE ...> goes in the <HEAD> section. So I don't think that it will do what I want.
RandomBen