exB - extreme B-AREA -

多くの常連が無駄死にで無かったことの証の為に・・・ 再び一陣の先頭を守る為に! 正門よ!私は帰ってきた!!

200 OK ー カスタムメッセージについて

概要

ウェブページが表示されるプロセスは、ユーザーエージェント(ブラウザのことです)からのリクエストに対しサーバーがレスポンスを返す対話形式となっています。リクエストされたファイルが存在すればブラウザにウェブページなどが正常に表示されますが、何らかの理由によりリクエストに答えられない場合、あらかじめ定義されたコードでその理由をブラウザに返します。このコードはレスポンスの先頭に3桁で記述され、ステータスコードと呼ばれています(リクエストが正常に処理された場合でもステータスコードは返される)。

代表的なエラーである404 File not foundなどをサーバーデフォルトの無味乾燥な表示ではなく、サイトに合わせてデザインを変更することも可能です。

HTTP/1.1におけるStatus Code

HTTP/1.1についてはRFC2068及びRFC2616で定義されています。

次のように分類されています。

1xx Informational
暫定的なレスポンスで、テスト以外で用いてはいけない。
2xx Successful
クライアントからのリクエストが成功したことを意味する。
3xx Redirection
リクエストのあったページが移動していることを意味する。
4xx Client Error
クライアントからのリクエストに間違いがあることを意味する。
5xx Server Error
サーバが正常に処理をできない状態。

リクエストしたURLが正常に表示された場合、レスポンスコードは200もしくは304のどちらかになります( Not Modified がなぜ300番台に分類されているのかちょっと疑問ではありますが)。

強調はそれなりに見かけるもの)
コードステータス
100Continue
101Switching Protocols
200OK
201Created
202Accepted
203Non-Authoritative Information
204No Content
205Reset Content
206Partial Content
300Multiple Choices
301Moved Permanently
302Found Moved Temporarily
303See Other
304Not Modified
305Use Proxy
307Temporary Redirect
400Bad Request
401Unauthorized
402Payment Required
403Forbidden
404Not Found
405Method Not Allowed
406Not Acceptable
407Proxy Authentication Required
408Request Time-out
409Conflict
410Gone
411Length Required
412Precondition Failed
413Request Entity Too Large
414Request-URI Too Large
415Unsupported Media Type
500Internal Server Error
501Not Implemented
502Bad Gateway
503Service Unavailable
504Gateway Time-out
505HTTP Version not supported

・・・500番台のエラーはサーバがレスポンスを返すことそのものが不能の場合が多いので、カスタムメッセージを作る意味があるかどうか微妙(Gateway Time-outなんてそれこそ中継地点の判断だろ→プロキシにカスタムメッセージを仕込む、という考えはある)。

参考:告白されたときの正しいステータスコードの返しかた