I've built a CMS that makes it fairly easy for my client to relocate pages in their site hierarchy. This site has all human-readable and intuitive URLs, so moving a page necessarily means that its URL changes. I am storing records of each resource's past URLs in the data store so that requests for bygone URLs are re-routed to their appropriate successors.

I'm warning my clients not to re-arrange the site willy-nilly (for numerous reasons). But nevertheless I suspect there's a chance page moves could get reversed from time to time.

So I'm trying to figure out whether 301 or 302 or 307 redirects should be used when serving up pages to requests for out-of-date URLs.

I understand the value of using 301 for search engine optimization. But my concern is with this system possibly inadvertently making some pages unavailable to some users


  1. That is, if the clients move a page at location/URL A to a new location B, then users get the redirect for A to B, and then the clients move the page back to A again, how long can I expect any of those users to keep getting their requests for A redirected to B -- in this case sending them to my friendly 404 page?

  2. Is it until an item in their browser history is cleared?

  3. Is the redirect somehow cached in routers throughout the internet?

  4. How does this work?

  5. How long can I expect the 301 redirect to linger out there ?

  • Try at least numbering your questions -- at least it will be easier to read and answer them. Right now it's TL;DR
    – LazyOne
    Oct 17, 2011 at 12:30
  • I have Made It So. Oct 17, 2011 at 13:00

2 Answers 2


Redirects are a function of your web server / web application and will be determined at time of GET request to your server.

Changes will be pretty immediate.

Keep 301 redirects in place as a whole for at least 6-9 months and forever for all inbound links from other websites.

Having gone through this whole switchover scenario, from experience, get your sitemap together and have Google Webmaster Tools monitoring your website. From this, you can get downloadable CSV files of things like all the links within your website, inbound links to your website, 404 errors(important!) and other crawl errors that might be giving you difficulties.

Use the 404 errors from Webmaster Tools to pick up all inbound links you've lost over the years that actually still link to live pages but can't because of page name changes and link path restructure.


Redirects don't linger or get cached in any place, so it's all about what your server sends out, each time. AFAIK.

What I would do is keep a record of all previous URLs, like you are doing. If they get requested, and they don't match the current URL, then 301 redirect them to the current URL.

As far as lingering, links to your old URLs may last forever, so ideally you should redirect forever.

You get a bonus score for reporting referrals to old URLs so that someone could actively work at getting them fixed.

  • Are you sure? Here's what I've dug up today on the Chrome Help forum: "For how long does Chrome cache 301 redirects?"(google.com/support/forum/p/Chrome/…)
    – Faust
    Oct 17, 2011 at 20:28
  • It might be only a Chrome thing: "Google Chrome caches 301 redirects" (bugsquash.blogspot.com/2008/12/…)
    – Faust
    Oct 17, 2011 at 20:33
  • Great info guys, I stand corrected Nov 3, 2011 at 15:57
  • Google Chrome is not the Google Search Engine. This is a user experience enhancement for a reduced web browser response time. Nov 13, 2011 at 22:23

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.