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'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

QUESTIONS:

  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 ?

share|improve this question
    
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 '11 at 12:30
    
I have Made It So. –  paulmorriss Oct 17 '11 at 13:00
add comment

2 Answers 2

up vote 1 down vote accepted

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.

share|improve this answer
add comment

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.

share|improve this answer
    
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 '11 at 20:28
    
It might be only a Chrome thing: "Google Chrome caches 301 redirects" (bugsquash.blogspot.com/2008/12/…) –  Faust Oct 17 '11 at 20:33
    
Great info guys, I stand corrected –  Tiggerito Nov 3 '11 at 15:57
    
Google Chrome is not the Google Search Engine. This is a user experience enhancement for a reduced web browser response time. –  Fiasco Labs Nov 13 '11 at 22:23
add comment

Your Answer

 
discard

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.