HTTPのmethod及びstatus code

HTTPの命令(methods)

表1 −HTTPの命令(methods)−
命令 説明 備考
GET 情報を得る。対象は、文書頭部(ヘッダ)と文書体部(ボディ)。  
HEAD 情報を得る。対象は、文書頭部(ヘッダ)。  
POST 情報を新しく作る。(サーバーのスクリプトへデータを送る)  
PUT 情報の蓄積を目的として新しく情報を作る。(サーバーへデータを送る) HTTP Ver.1.0ではオプション。
DELETE 情報を削除する。 HTTP Ver.1.0ではオプション。
TRACE 診断情報を返答する。(サーバーやプロキシの動作の診断) HTTP Ver.1.1より追加。
OPTIONS 使用できる命令(methods)やオプションの一覧を取得する HTTP Ver.1.1より追加。
CONNECT プロキシでのトンネリング接続を行う。 HTTP Ver.1.1より追加。
LINK 情報同士を関係付ける。 HTTP Ver.1.1では廃止。
UNLINK 情報同士の関係付けの解除。 HTTP Ver.1.1では廃止。


状態番号(ステータスコード)の最初に桁は、HTTPの応答の区分を定義しており、1〜5の値がある。

表2 −状態番号(ステータスコード)の区分とその説明−

区分 comment 説明 エラー要因
1xx Informational  要求は、処理中。 (エラーではない。)
2xx Successful 要求は、正常終了。 (エラーではない。)
3xx Redirection 要求を完了するため、別の追加動作を行っている。 (エラーではない。)
4xx Client Error 間違った要求により、実行不能。 クライアント側に起因するエラー。
5xx Server Errors 要求を実行できなかった。 サーバー側に起因するエラー。



表3 −状態番号(ステータスコード)とその説明−(コード番号が太字部分は、HTTP Ver.1.1で追加変更されています。)

コード comment 命令(methods) 要求されるメタ情報 解説
100 Continue   なし 要求は、受け付けたが、処理は続行中。
101 Switching Protocols   Upgrade-header 要求のあった通信手順に切り替え中。
200 OK GET, HEAD, POST,TRACE なし 正常終了。
201 Created POST, PUT URI-header POST が成功。またはPUT が新しいオブジェクトを作成。
202 Accepted GET, HEAD, PUT, POST, DELETE なし 要求は、受付たが、処理未完了。
203 Non-Authoritative Information GET, HEAD, POST なし 応答情報中のメタ情報がローカルまたはサードパーティーから集められたものであることを示す。例えば、リソースに関する注釈 (annotation) など。
204 No Content なし サーバーは要求を受付けたが、返す情報がない。
205 Deleted DELETE なし DELETE 成功。対象は、サーバーから削除された。Ver.1.0のみ
205 Reset Content   なし サーバーは、要求の取り消しを実行した。Ver.1.1のみ
206 Modified PUT なし PUT 成功。対象は、サーバーから更新された。Ver.1.0のみ
206 Partial Content   Range-header サーバーは、情報の一部を得た。Ver.1.1のみ
300 Multiple Choices GET, HEAD なし 要求された情報が複数存在する。
301 Moved Permanently GET, HEAD, POST, PUT URI-header, Location 要求された情報は、一時的に別のURLに存在する。
302 Moved Temporary URI-header, Location 要求されたファイルは、一時的に移動した。
303 See Other   なし 要求された情報は、別のURIに存在する。
304 Not Modified 条件付きGET なし 要求を受付けたが、情報が更新されていない。
305 Use Proxy   なし 要求された情報は、プロキシを通してアクセスしなければならない。
306 (Unused)   なし 未使用。
307 Temporary Redirect   なし
400 Bad Request GET, HEAD, POST, PUT,DELETE,
LINK,UNLINK
なし 要求を実行できない。(構文が不正)
401 Unauthorized WWW-Authenticate 情報の要求に認証を必要とする。または、認証の拒否。
402 Payment Required なし このコードは現在サポートされていない。将来用。
403 Forbidden なし 要求の拒否。認証が不完全。
404 Not Found なし 要求された情報(ファイル)がない。
405 Method Not Allowed Allow 要求は、許可されていない。
406 Not Acceptable Content-Type, Content-Encoding, 
Content-Language
Accept、Accept-Encoding、Accept-Languageヘッダの要求条件に不適合。
407 Proxy Authentication Required Proxy-Authenticate プロキシサーバで情報の要求に認証を必要とする。または、認証の拒否。
408 Request Timeout なし サーバーが待機時間内にクライアントが要求を送れなかった。
409 Conflict PUT なし 要求された情報は、現在の情報と矛盾している。
410 Gone   なし 要求された情報がサーバーにおいて有効ではなく、転送先アドレスも不明。
Web保守作業の補助用。
411 Length Required   Content-length 定義された情報の長さがない場合、サーバーは、情報の要求を拒否。
412 Precondition Failed   なし 要求された頭部(ヘッダ)情報の前提条件が間違っている。
413 Request Entity Too Large   なし 要求された情報の結果が長すぎる。
414 Request-URI Too Long   なし 要求された情報のURIが長すぎる。
415 Unsupported Media Type   なし 要求された情報の結果が長すぎる。
416 Requested Range Not Satisfiable      
417 Expectation Failed      
500 Internal Server Error 全て なし 予期しないサーバーエラーのため、要求を実行できなかった。
501 Not Implenmented なし サーバーは、要求された機能をサポートしていない。
502 Bad Gateway なし クライアントより見て、ゲートウエイまたはプロキシーサーバの接続先サーバの応答が妥当でないことを示す。注)1
503 Service Unavailable Retry-After サービス(サーバー)が高負荷。Retry-Afterヘッダに示す時間後には緩和される。応答文中にRetry-Afterヘッダがなければ、クライアントは応答を500番と同等に扱う必要がある。
504 Gateway Timeout なし ゲートウエイまたはプロキシの応答がゲートウエイの指定時間内に得られない。注)1
505 HTTP Version Not Supported   なし HTTP Versionをサポートしていない。

注1 クライアントとHTTPの交信という観点からは、他のサービスはゲートウエイとプロキシーに隠蔽されているので、"500 Internal Server Error"と同等
注2 木内貴弘 翻訳, Network Working Group 著 「ハイパーテキストトランスファープロトコール第1.0版仕様書(日本語翻訳版)」(1994)の6.3項より引用。
注3 The WAYStudying HTTP [The WAY]よりHTTP Ver.1.1に関するRFC2616和訳全体を参照。