Take the 2-minute tour ×
Webmasters Stack Exchange is a question and answer site for pro webmasters. It's 100% free, no registration required.

I had a site where the urls were constructed like this


These were indexed in google, and search results returned that pointed to these.

However, I've recently replatformed that site, and reconfigured it so the above urls would be:


The original urls are returning 404s. The site is linking to the correct URL schema internally, but Google is retaining the original schema in its search results. I've updated and resubmitted the sitemap which only contains the new schema. Also, Google's webmasters tool is going slightly bananas at the fact there's now a spike in 404 errors in its crawl results.

What would be the best approach to get Google to 'forget' about the old schema, and instead index the new schema? Should I try blocking /index.php/ in robots.txt? Should I be returning 301 codes instead of 404 for the original urls?

share|improve this question

2 Answers 2

In my opinion, the best way to solve your problem is to:

  • Make 301 redirects from your old URLs to new ones

Google will understand easily if you changed your sitemap.xml, internal links and if there is no more 404 pages.

In your case, Google says you must follow these rules.

share|improve this answer
-1 Do not disallow old URLs in robots.txt. If you do then Google won't see your 301 redirects, since the old URL is not requested. The key is to setup 301 redirects and not return 404s. (I'll remove the neg vote when updated ;) –  w3d Nov 30 '12 at 13:19
Sorry, you're right. I confused with other stuff. Answer edited. –  Zistoloen Nov 30 '12 at 13:29

Also do a fetch as googlebot and submit all linked pages, 'if your site has undergone significant changes'.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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