301 vs 302 redirect:
- Status 301 means that the resource (page) is moved permanently to a new location. The client/browser should not attempt to request the original location but use the new location from now on. It's like a Change of Address form from the Postal Service. All traffic intended for URL A is permanently routed to URL B, and all link popularity and existing SEO value for URL A should also be transferred to URL B.
- Status 302 means that the resource is temporarily located somewhere else, and the client/browser should continue requesting the original url. There are very few instances where this type of redirect should be used, but unfortunately it is the easiest to implement. This means that many webmasters unfamiliar with search engine mechanics use the wrong type of redirect.