3xx Redirection
Redirection messages
Further action is needed to complete the request, usually following a Location header to another URL.
The important distinctions in the 3xx range are permanence and method preservation. 301 and 308 are permanent and transfer ranking signals; 302, 303, and 307 are temporary. 307 and 308 preserve the request method and body, while 301, 302, and 303 allow or require a rewrite to GET.
304 Not Modified is the odd one out: it is a cache validation response rather than a redirect, and it carries no body at all.
Codes in this class
- 300 Multiple Choices: The request has more than one possible representation and the server is asking the client to pick one.
- 301 Moved Permanently: The resource has a new permanent URL, given in Location. Clients and search engines should update their references.
- 302 Found: The resource is temporarily at a different URL. Keep using the original URL for future requests.
- 303 See Other: The result of the request is at another URL that should be fetched with GET, whatever method was originally used.
- 304 Not Modified: The cached copy the client already holds is still current, so the server sends no body.
- 305 Use Proxy: Deprecated. Originally told the client to repeat the request through the proxy named in Location.
- 306 (Unused): Reserved. Defined in a draft as Switch Proxy, never standardized, and now permanently unused.
- 307 Temporary Redirect: Same as 302 but the request method and body must be preserved when following the redirect.
- 308 Permanent Redirect: Same as 301 but the request method and body must be preserved when following the redirect.