I manage a website with tens of thousands of pages named /view.php?id=1234 and so on. Because we wanted it to be more SEO-friendly, a 301 Moved Permanently redirection of each one of them to /view/name-of-the-page-1234/ was created.

This was about 5 years ago, and everything went fine. But recently thousands of pages have been reappering in Google with the old view.php URL! So I have about 20,000 results in common between the redirected and the unredirected URLs, which I am guessing will be sooner or later penalized for duplicated content.

I have been told about disallowing view.php in robots.txt, but I think that wouldn't be a good idea since Google would stop crawling redirections completely.

How could I stop this duplicate content from appearing in searches and avoid being penalized?

  • 1
    Are you 100% sure the redirect is a 301, and not a 302? Apr 19, 2013 at 15:06
  • 1
    I am 200% sure :)
    – MM.
    Apr 22, 2013 at 9:59

2 Answers 2


Use a canonical header in each page, this way if you do accidently have the same content available from multiple URL, the search engines will know which is the real URL of the content.

  • While adding a canonical header is a good idea and I'll indeed try that, I don't have the same page available from multiple URIs. I am 150% sure that every view.php?id=1234 is redirected with a 301, yet Google is showing some view.php results instead of the redirected URL.
    – MM.
    Apr 19, 2013 at 13:02

You have to make sure all 301 redirect are on and implement missing ones.

  • There are no missing 301 redirects. All are redirected, when you enter in the Google result, you get redirected, but for some reason Google is showing the old URL instead of the new.
    – MM.
    Apr 19, 2013 at 13:01
  • Maybe your 301 redirects have been disabled for a while because if they were enabled for 5 years, there is no reason why Google indexes again your old URL.
    – Zistoloen
    Apr 19, 2013 at 13:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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