1

I made a complete rewrite of a webpage. The previous version was made in PHP and the whole URL scheme was like this:

domain.com/?p=subpage

The new webpage is just a couple .html files (that's a static webpage). This means that any query of form

domain.com/?p=subpage

will render the same index.html content. This makes Google punish me for content duplication.

I uploaded a sitemap which does not contain these urls before the webpage was indexed but it didn't prevent Google from indexing those old garbage.

I noticed that in the Google webmaster console, in the URL parameters section there is a rule matching p. Unfortunately, the console gives me no way of deleting it.

What's the best thing I could do in this situation?

1
  • "This makes Google punish me for content duplication." - I think "punish" is a bit harsh. What is likely to happen is that Google may index both URLs and simply return one or the other in the SERPs. Google does not issue a "penalty" as such. Any "penalty" comes from having changed the URL and not redirecting traffic from the old URL to the new. – DocRoot Jul 22 '17 at 10:46
3

When you click on Configure URL parameters in the URL parameters section of Google Webmaster Console, you should be able to Edit and then No: Doesn't affect page content (e.g. tracks usage) the ?p parameter. That will be a strong signal to Google to stop taking the ?p parameter into account.

An additional measure could be to add a <link rel="canonical"> with the right URL to the page (so without ?p), just to let Google know that this is the exact URL that you want.

1
  • But the page which is shown as domain.com and domain.com/?p=foo is the very same html file, so even if add <link rel="canonical">, it will appear on all of them – marmistrz Jul 22 '17 at 12:07
1

If I'm understanding your question correctly, what was once /?p=example-page would now be /example-page.html.

If that's right, the best thing to do is permanently redirect the old parameter pages to their respective .html versions, so:

/?p=aboutme -- 301 > /about-me.html
/?p=prices -- 301 > /prices.html

And so on.

Doing this prevents the duplication problem. It informs search engines that the old page has been replaced, causing the old page to be removed from search indices and the "SEO value" to be passed to the new pages.

It also ensures direct traffic (e.g., from browser bookmarks and external links) to old pages is forwarded to the new ones.

This is the approach recommended by Google's guide to site moves with URL changes.

1
  • The problem is that the standard syntax for redirects in .htaccess doesn't seem to do anything (for tests I used a 302 temporary redirect): Redirect 302 /?p=galeria http://example.com/gallery.html – marmistrz Jul 23 '17 at 10:10
0

One simple solution is allowing the search engines to crawl the URLs pointing to the web pages with same content. Just mark them as ‘DUPLICATES’ using the rel = “canonical” element, 301 redirect or the URL parameter handling tool. To avoid too much crawling of your site, adjust the crawl rate setting in Search Console. Duplicate content on a site is not penalized unless it appears to Google that the duplication intends to manipulate search engine results. In this case, Google indexes the best version of the content in SERPs.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.