この記事はまだボランティアによって 日本語 に翻訳されていません。ぜひ MDN に参加して翻訳を手伝ってください!
この記事を English (US) で読むこともできます。
The HyperText Transfer Protocol (HTTP) 301 Moved Permanently
redirect status response code indicates that the resource requested has been definitively moved to the URL given by the Location
headers. A browser redirects to this page and search engines update their links to the resource (in 'SEO-speak', it is said that the 'link-juice' is sent to the new URL).
Even if the specification requires the method (and the body) not to be altered when the redirection is performed, not all user-agents align with it - you can still find this type of bugged software out there. It is therefore recommended to use the 301
code only as a response for GET
or HEAD
methods and to use the 308
Permanent Redirect
for POST
methods instead, as the method change is explicitly prohibited with this status.
Status
301 Moved Permanently
Example
Client request
GET /index.php HTTP/1.1 Host: www.example.org
Server response
HTTP/1.1 301 Moved Permanently Location: http://www.example.org/index.asp
Specifications
Specification | Title |
---|---|
RFC 7231, section 6.4.2: 301 Redirect Permanently | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |
Browser compatibility
The information shown below has been pulled from MDN's Github (https://github.com/mdn/browser-compat-data).
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Feature | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
Basic support | Yes | Yes | Yes | Yes | Yes | Yes |
Feature | Android webview | Chrome for Android | Edge mobile | Firefox for Android | Opera Android | iOS Safari | Samsung Internet |
---|---|---|---|---|---|---|---|
Basic support | Yes | Yes | Yes | Yes | Yes | Yes | Yes |