Skip to content
3xx Redirection Cacheable by default

301 Moved Permanently

The resource has a new permanent URL, given in `Location`.

What causes it

  • A site moved to HTTPS, to a new domain, or from /old-page to /new-page.
  • A canonical-URL rule adding or removing a trailing slash or www.

How to fix it

  • Browsers cache 301s hard, sometimes indefinitely. If you 301 by mistake, visitors keep being redirected after you fix the server — test with 302 first, then switch to 301 once you are sure.
  • For SEO, a 301 passes ranking signals; a 302 does not reliably.
  • Old clients may turn a 301 on POST into a GET. Use 308 if the method must be preserved.

At a glance

Class
3xx Redirection
Reference
RFC 9110 §15.4.2
Standardised
Yes
Retry the request?
No — fix the request

Other 3xx redirection codes

Back to the full HTTP status code reference