301

状態符号 301 (HTTP)

[412] 301 (Moved Permanently) は、 リダイレクトを表す状態符号です。一時的なリダイレクトではなく、 今後も同じ新 URL を使うべきことをも表しています。

仕様書

意味

[404] 301 は、対象資源に新しい永続的 (permanent) URL が割り当てられており、この資源に対する以後の参照には指定された URL のいずれかを使うべき (ought to) であることを表します >>403

文脈

[303] 受信者は、非妥当要求行を受信した時、 400 を返すのでなければ、適切に符号化された要求対象301 リダイレクトする応答を返すべきです >>302

構文

[406] は、 Location: ヘッダー生成して新しい永続的 URL の好ましい URL を指定するべきです >>403

[408] payload は、通常新しい URL (群)へのハイパーリンクを含む短いハイパーテキストのメモを含めます >>403

処理モデル

[407] 利用者エージェントは、 Location: ヘッダーの値を自動的なリダイレクトに使って構いません >>403

[405] リンク編集機能のあるクライアントは、 実効要求URLへの参照をできる限りが指定した新しい参照へと自動的に置き換えるべき (ought to) です >>403

[409] 歴史的理由により、利用者エージェントは、 次の要求の際に POSTGET に変更して構いません >>403Web互換性のためには、変更しなければなりません >>2

[410] これが望ましくない時は、かわりに 307 を使えます >>403

[411] 301 応答は、キャッシュ可能です >>403

歴史

[401] RFC 1945 (HTTP/1.0); RFC 2068・2616 (HTTP/1.1) 10.3.2 301 Moved Permanently

The requested resource has been assigned a new permanent URL URI and any future references to this resource should SHOULD {1945,2068} be done using {2616} use that URL one of the returned URIs. Clients with link editing capabilities {1945} should {2068} SHOULD {2616} ought to automatically re-link references to the Request-URI to one or more of the new references returned by the server, where possible. {2068,2616} This response is cacheable unless indicated otherwise.

要求された資源には新しい永続 URI が割り当てられており、 将来のこの資源への参照は全て返された URI の一つを使うべきです。 リンク編集機能のあるクライアントは、可能であれば、 Request-URI をサーバーにより返された1つ以上の新しい参照に自動的に再リンクするべきです。 この応答は、別途指示されていない限りキャッシュ可能です。

{2068} If the new URI is a location, its {1945} The new URL {2616} The new permanent URI {1945,2068} must {2068,2616} SHOULD be given by the Location field in the response.

新しい永続 URI は、応答の Location 欄で与えられるべきです

Unless it was a HEAD request the request method was HEAD, the Entity-Body entity of the response should SHOULD contain a short hypertext note with a hyperlink to the new URL URI(s).

要求 method が HEAD でない限り、 応答の実体は新しい URI (群) へのハイパーリンクが入った短いハイパーテキストの覚書を含むべきです

If the 301 status code is received in response to a request {1945} using the POST method {2068,2616} other than GET or HEAD {errata} method that is known to be "safe", as defined in section 9.1.1, then the request MAY be automatically redirected by the user agent without confirmation. Otherwise, the user agent must not MUST NOT automatically redirect the request unless it can be confirmed by the user, since this might change the conditions under which the request was issued.

「安全」とわかっている method については、利用者エージェントは要求を確認なしに自動的に redirect しても構いません。 それ以外の場合には、 利用者エージェントは利用者が確認することなしに自動的に redirect してはなりません。そうでないと、要求が発行された条件を変更してしまうかもしれないからです。

Note: When automatically redirecting a POST request after receiving a 301 status code, some existing HTTP/1.0 user agents will erroneously change it into a GET request.

注意 : 301 状態符号を受信して POST 要求を自動的に redirect するときに、誤って GET 要求に変えてしまう HTTP/1.0 利用者エージェントが存在します。

注 : 特に注記のない修正は、 RFC 1945 → RFC 2068 のもの (削除部 = 1945, 挿入部 = 2068)。

[402] HTTP - WHATWG Wiki ( ( 版)) <http://wiki.whatwg.org/wiki/HTTP#Redirects>

関連

[413] よく使われるリダイレクト状態符号には 302 もあります。 302 は一時的なリダイレクトであり、 今後も必要なら元の URL にアクセスするべきことを意味しています。