「HTTPステータスコード」の版間の差分
(→関連項目) |
|||
(同じ利用者による、間の2版が非表示) | |||
行1: | 行1: | ||
− | + | [[HTTPステータスコード]] とは、[[Hypertext Transfer Protocol|HTTP]]において[[Webサーバー]]からのレスポンス([[HTTPレスポンス]])に含まれる3桁の数字からなるコードのことです。 | |
− | + | ||
− | + | ||
− | [[ | + | |
− | 読み方 | + | '''読み方''' |
− | ;[[ | + | ;[[HTTPステータスコード]]: えいちてぃーてぃーぴー すてーたす こーど |
__TOC__ | __TOC__ | ||
== 概要 == | == 概要 == | ||
− | + | [[HTTPステータスコード]] とは、[[Hypertext Transfer Protocol|HTTP]]において[[Webサーバー]]からのレスポンス([[HTTPレスポンス]])に含まれる3桁の数字からなるコードのことです。 | |
− | [[ | + | [[HTTPステータスコード]] は、 HTTPリクエスト の成功や失敗やドキュメントの移動などを意味します。 |
− | [[ | + | |
下記は、www.yahoo.com へのリクエストの例です。 | 下記は、www.yahoo.com へのリクエストの例です。 | ||
行60: | 行56: | ||
== 1xx 情報 == | == 1xx 情報 == | ||
− | |||
* HTTP/1.0 は、 1xx ステータスコードを定義していません。 | * HTTP/1.0 は、 1xx ステータスコードを定義していません。 | ||
− | |||
=== 100 Continue === | === 100 Continue === | ||
− | |||
クライアントは、その要求を継続してもよい。 | クライアントは、その要求を継続してもよい。 | ||
− | |||
=== 101 Switching Protocols === | === 101 Switching Protocols === | ||
− | |||
プロトコルの切り替えです。 | プロトコルの切り替えです。 | ||
Upgrade ヘッダフィールドが定義するプロトコルに変更します。 | Upgrade ヘッダフィールドが定義するプロトコルに変更します。 | ||
− | |||
== 2xx 成功 == | == 2xx 成功 == | ||
− | |||
クライアントの要求が成功したときにこのステータスコードを返します。 | クライアントの要求が成功したときにこのステータスコードを返します。 | ||
− | |||
=== 200 OK === | === 200 OK === | ||
− | |||
リクエストが成功し、レスポンスと一緒に返されます。 | リクエストが成功し、レスポンスと一緒に返されます。 | ||
− | |||
=== 201 Created === | === 201 Created === | ||
− | |||
リクエストが成功し、新しいリソースが作成されたことを意味します。 | リクエストが成功し、新しいリソースが作成されたことを意味します。 | ||
− | Location ヘッダーフィールドに新しく作成された | + | Location ヘッダーフィールドに新しく作成された URI を返します。 |
オリジンサーバは、201ステータスコードを返す前に、リソースが作成されていなければなりません。もし、ただちにリソースを作成できない場合は、 202 Accepted レスポンスをサーバは返します。 | オリジンサーバは、201ステータスコードを返す前に、リソースが作成されていなければなりません。もし、ただちにリソースを作成できない場合は、 202 Accepted レスポンスをサーバは返します。 | ||
− | |||
=== 202 Accpted === | === 202 Accpted === | ||
− | |||
リクエストは、処理することを受け付けたことを意味します。 | リクエストは、処理することを受け付けたことを意味します。 | ||
ただし、処理は、まだ、完了していません。 | ただし、処理は、まだ、完了していません。 | ||
この非同期の操作は、その結果のステータスコードを再送する機能はありません。。 | この非同期の操作は、その結果のステータスコードを再送する機能はありません。。 | ||
− | |||
=== 203 Non-Authoritative Information === | === 203 Non-Authoritative Information === | ||
− | |||
ローカルやプロキシ等からの情報であることを締めあします。 | ローカルやプロキシ等からの情報であることを締めあします。 | ||
− | |||
=== 204 No Content === | === 204 No Content === | ||
− | |||
返すべき、レスポンスエンティティが存在しない場合に返されます。 | 返すべき、レスポンスエンティティが存在しない場合に返されます。 | ||
POST メソッドでフォームの内容を送信したが、ブラウザの画面を更新しない場合に返されます。 | POST メソッドでフォームの内容を送信したが、ブラウザの画面を更新しない場合に返されます。 | ||
− | |||
=== 205 Reset Content === | === 205 Reset Content === | ||
− | |||
サーバは、リクエストを処理し、ユーザエージェントは、ドキュメントビューをリセットしなければなりません。フォームをクリアする必要があります。このレスポンスは、エンティティを含みません。 | サーバは、リクエストを処理し、ユーザエージェントは、ドキュメントビューをリセットしなければなりません。フォームをクリアする必要があります。このレスポンスは、エンティティを含みません。 | ||
− | |||
=== 206 Partial Content === | === 206 Partial Content === | ||
− | |||
サーバは、部分的な GET リクエストを完了したことを意味します。 | サーバは、部分的な GET リクエストを完了したことを意味します。 | ||
このリクエストは、 Range ヘッダーフィールド を含んでいないといけません。 | このリクエストは、 Range ヘッダーフィールド を含んでいないといけません。 | ||
行113: | 行88: | ||
multipart/byteranges を使わないなら、レスポンスの Content-Length ヘッダーフィールドは、メッセージボディの転送したオクテットの実際の数値が一致していないとなりません。 | multipart/byteranges を使わないなら、レスポンスの Content-Length ヘッダーフィールドは、メッセージボディの転送したオクテットの実際の数値が一致していないとなりません。 | ||
− | |||
=== 207 Multi-Status === | === 207 Multi-Status === | ||
− | + | WebDAV の拡張ステータスコードです。 | |
− | + | ||
− | + | ||
=== 226 IM Used === | === 226 IM Used === | ||
− | |||
Delta encoding in HTTP の拡張ステータスコードです。 | Delta encoding in HTTP の拡張ステータスコードです。 | ||
− | |||
== 3xx リダイレクション == | == 3xx リダイレクション == | ||
− | |||
リソースの場所にリダイレクトするために使われます。 | リソースの場所にリダイレクトするために使われます。 | ||
− | + | === 301 Moved Permanently === | |
+ | リソースが恒久的な移動を意味します。 | ||
+ | === 302 Found === | ||
+ | そのリソースが保存されている現時点のURLをLocationで示しています。 | ||
+ | === 304 Not Modified === | ||
+ | クライアントがGETリクエストを送信したときに、リソースが更新されていなければ、このステータスコードが返ります。304の場合、レスポンスボディは返しません。 | ||
+ | === 307 Temporary Redirect === | ||
+ | 一時的なリダイレクトです。 | ||
+ | POSTからGETへの変更を許可しません。 | ||
+ | === 308 Permanent Redirect === | ||
+ | 永久的なリダイレクトです。 | ||
+ | POSTからGETへの変更を許可しません。 | ||
== 4xx クライアントエラー == | == 4xx クライアントエラー == | ||
− | |||
クライアントからのリクエストに誤りがあったことを意味します。 | クライアントからのリクエストに誤りがあったことを意味します。 | ||
− | + | === 400 Bad Request === | |
+ | リクエストの構文が間違っているときのエラーです。 | ||
+ | たとえば、リクエストヘッダにHostヘッダがない場合に、このレスポンスが返ります。 | ||
+ | === 401 Unauthorized === | ||
+ | 認証が必要なときのエラーです。 | ||
+ | === 402 Payment Required === | ||
+ | 有料ページへのアクセスを想定したエラーです。 | ||
+ | === 403 Forbidden === | ||
+ | サーバーによって禁止されているメソッドを実行しようとしたときのエラーです。 | ||
+ | === 404 Not Found === | ||
+ | サーバーがリソースがないときに返すエラーです。 | ||
+ | === 405 Method Not Allowed === | ||
+ | Request URI にあるリソースは、要求されたメソッドを許可していません。 | ||
== 5xx サーバエラー == | == 5xx サーバエラー == | ||
− | |||
サーバがリクエストの処理に失敗したことを意味します。 | サーバがリクエストの処理に失敗したことを意味します。 | ||
− | |||
== 関連項目 == | == 関連項目 == | ||
{{http}} | {{http}} | ||
+ | <!-- vim: filetype=mediawiki | ||
+ | --> |
2015年9月23日 (水) 17:41時点における最新版
HTTPステータスコード とは、HTTPにおいてWebサーバーからのレスポンス(HTTPレスポンス)に含まれる3桁の数字からなるコードのことです。
読み方
- HTTPステータスコード
- えいちてぃーてぃーぴー すてーたす こーど
概要
HTTPステータスコード とは、HTTPにおいてWebサーバーからのレスポンス(HTTPレスポンス)に含まれる3桁の数字からなるコードのことです。 HTTPステータスコード は、 HTTPリクエスト の成功や失敗やドキュメントの移動などを意味します。
下記は、www.yahoo.com へのリクエストの例です。
%curl -I -v http://www.yahoo.com/ * About to connect() to www.yahoo.com port 80 (#0) * Trying 111.67.226.84... * connected * Connected to www.yahoo.com (111.67.226.84) port 80 (#0) > HEAD / HTTP/1.1 > User-Agent: curl/7.24.0 (i386-portbld-freebsd7.1) libcurl/7.24.0 OpenSSL/0.9.8e zlib/1.2.3 > Host: www.yahoo.com > Accept: */* > < HTTP/1.1 200 OK HTTP/1.1 200 OK < Date: Sat, 11 May 2013 07:49:58 GMT Date: Sat, 11 May 2013 07:49:58 GMT < P3P: policyref="http://info.yahoo.com/w3c/p3p.xml", CP="省略" P3P: policyref="http://info.yahoo.com/w3c/p3p.xml", CP="省略" < Cache-Control: private Cache-Control: private < X-Frame-Options: SAMEORIGIN X-Frame-Options: SAMEORIGIN < Set-Cookie: PH=deleted; expires=Fri, 11-May-2012 07:49:57 GMT; path=/; domain=.yahoo.com Set-Cookie: PH=deleted; expires=Fri, 11-May-2012 07:49:57 GMT; path=/; domain=.yahoo.com < Vary: Accept-Encoding Vary: Accept-Encoding < Content-Type: text/html; charset=utf-8 Content-Type: text/html; charset=utf-8 < Age: 0 Age: 0 < Connection: keep-alive Connection: keep-alive < Server: YTS/1.20.13 Server: YTS/1.20.13 * no chunk, no close, no size. Assume close to signal end < * Closing connection #0
下記のリクエストに対して、
HEAD / HTTP/1.1
200 OK というレスポンスが返ってきました。
HTTP/1.1 200 OK
1xx 情報
- HTTP/1.0 は、 1xx ステータスコードを定義していません。
100 Continue
クライアントは、その要求を継続してもよい。
101 Switching Protocols
プロトコルの切り替えです。 Upgrade ヘッダフィールドが定義するプロトコルに変更します。
2xx 成功
クライアントの要求が成功したときにこのステータスコードを返します。
200 OK
リクエストが成功し、レスポンスと一緒に返されます。
201 Created
リクエストが成功し、新しいリソースが作成されたことを意味します。 Location ヘッダーフィールドに新しく作成された URI を返します。 オリジンサーバは、201ステータスコードを返す前に、リソースが作成されていなければなりません。もし、ただちにリソースを作成できない場合は、 202 Accepted レスポンスをサーバは返します。
202 Accpted
リクエストは、処理することを受け付けたことを意味します。 ただし、処理は、まだ、完了していません。 この非同期の操作は、その結果のステータスコードを再送する機能はありません。。
203 Non-Authoritative Information
ローカルやプロキシ等からの情報であることを締めあします。
204 No Content
返すべき、レスポンスエンティティが存在しない場合に返されます。
POST メソッドでフォームの内容を送信したが、ブラウザの画面を更新しない場合に返されます。
205 Reset Content
サーバは、リクエストを処理し、ユーザエージェントは、ドキュメントビューをリセットしなければなりません。フォームをクリアする必要があります。このレスポンスは、エンティティを含みません。
206 Partial Content
サーバは、部分的な GET リクエストを完了したことを意味します。 このリクエストは、 Range ヘッダーフィールド を含んでいないといけません。 レスポンスには、 Content-Range ヘッダーフィールドか、 mulripart/byteranges Content-Type のそれぞれに Content-Range フィールドが必要です。
multipart/byteranges を使わないなら、レスポンスの Content-Length ヘッダーフィールドは、メッセージボディの転送したオクテットの実際の数値が一致していないとなりません。
207 Multi-Status
WebDAV の拡張ステータスコードです。
226 IM Used
Delta encoding in HTTP の拡張ステータスコードです。
3xx リダイレクション
リソースの場所にリダイレクトするために使われます。
301 Moved Permanently
リソースが恒久的な移動を意味します。
302 Found
そのリソースが保存されている現時点のURLをLocationで示しています。
304 Not Modified
クライアントがGETリクエストを送信したときに、リソースが更新されていなければ、このステータスコードが返ります。304の場合、レスポンスボディは返しません。
307 Temporary Redirect
一時的なリダイレクトです。 POSTからGETへの変更を許可しません。
308 Permanent Redirect
永久的なリダイレクトです。 POSTからGETへの変更を許可しません。
4xx クライアントエラー
クライアントからのリクエストに誤りがあったことを意味します。
400 Bad Request
リクエストの構文が間違っているときのエラーです。 たとえば、リクエストヘッダにHostヘッダがない場合に、このレスポンスが返ります。
401 Unauthorized
認証が必要なときのエラーです。
402 Payment Required
有料ページへのアクセスを想定したエラーです。
403 Forbidden
サーバーによって禁止されているメソッドを実行しようとしたときのエラーです。
404 Not Found
サーバーがリソースがないときに返すエラーです。
405 Method Not Allowed
Request URI にあるリソースは、要求されたメソッドを許可していません。
5xx サーバエラー
サーバがリクエストの処理に失敗したことを意味します。