オルタナティブ・ブログ > 吉政忠志のベンチャービジネス千里眼 >

IT業界でベンチャービジネスの支援をしている執筆者が日々の活動ログと感じたことを、徒然なるままに書き綴っていきます。

「夜と霧(RFCステータスコードの話)」(スーパーエンジニアコラム)

»

こんばんは。吉政創成の吉政でございます。

弊社のお客様であるCTC教育サービスが表記のコラムを同社のメルマガで公開されました。

メルマガの目次は以下の通りです。
■ニュース  連載型技術コラムサイト公開!!
■トピック  Inst. Tech View ~第16回
      "セキュリティの重要性を身をもって知る方法"~
■コラム   スーパーエンジニアの独り言 第14回"夜と霧"
メルマガの全文をご覧になりたい方はいかのPDFをご覧ください。
ctc08.pdfをダウンロード  

表記のコラムについては以下をご覧ください。

◆◇ 『スーパーエンジニアの独り言 第14回 "夜と霧"』          ◇◆

「404 Not Found」という表示をどこかで見た経験があることでしょう。

このブラウザで表示されるメッセージは、HTTPのステータスです。クライアントであるウェブブラウザから送信されるHTTPリクエストに対してサーバであるウェブサーバからのHTTPレスポンスに埋め込まれる情報です。ステータスは、三桁の数字(コード)で表現されます。ステータスコードは該当する要求に対する態度とも言えましょう。

以下にRFCで規定されているステータスコード(一部)を列記します。

Informational 1xx
100 Continue
101 Switching Protocol

2xx Successful 2xx
200 OK
201 Created
202 Accepted
203 Non-Authoritative Information
204 No Content
205 Reset Content
206 Partial Content

Redirection 3xx
300 Multiple Choices
301 Moved Permanently
302 Found
303 See Other
304 Not Modified
305 Use Proxy
306 (Unused)
307 Temporary Redirect

Client Error 4xx
400 Bad Request
401 Unauthorized
402 Payment Required
403 Forbidden
404 Not Found
405 Method Not Allowed
406 Not Acceptable
407 Proxy Authentication Required
408 Request Timeout
409 Conflict
410 Gone
411 Length Required
412 Precondition Failed
413 Request Entity Too Large
414 Request-URI Too Long
415 Unsupported Media Type
416 Requested Range Not Satisfiable
417 Expectation Failed

Server Error 5xx
500 Internal Server Error
501 Not Implemented
502 Bad Gateway
503 Service Unavailable
504 Gateway Timeout
505 HTTP Version Not Supported

コードの最初の数字がカテゴリを示します。例えば、200番台はリクエストが受理された事を示し、400番台はクライアントに起因するエラー、500番台はサーバが処理に失敗、をそれぞれ意味します。

ステータスコードはウェブサーバのみならず、ウェブアプリケーションを作成する際に必要となる場合があります。これは送信されるリクエストに対して、どの様に応答するかをウェブアプリケーションで決める場合もあるからです。

例えば、100(Continue)は通信量を減らすため工夫です。クライアントからの要求にサーバが「継続」を認めるステータスコードです。クライアントは、100番を受け取った後、データ本文であるボディ部分を送信します。反対にサーバが要求を受け付けられない場合には、400番台のスータスコードを返します。例えば、417(Expectation Failed) つまり「継続不可」です。これにより無駄な通信を減らすという仕組みです。

詳細はHypertext Transfer Protocol -- HTTP/1.1(RFC 2616)をご参照ください。またHyper Text Coffee Pot Control Protocol(HTCPCP/1.0)(RFC 2324) もご興味があれば、併せてどうぞ御覧ください。

ウェブサーバは特定状況における態度をルールで決められていますが、人間は「その状況に対する態度を決める自由」を持っているのだとヴィクトール・エミール・フランクル(Viktor Emil Frankl)は述べています。彼の著書である「夜と霧」(原題「それでも人生に然りと言う」所収の「一人の心理学者が強制収容所を体験する」)で力強く語っています。

どのような状況でも、それに対峙する態度を決めるのは自分である。意思の自由は何人たりとも奪うことの出来ない、個としての存在意義なのだと説いています。様々な問題を抱える我々一人ひとりにフランクルからの心強いエールであると理解し日々を邁進したいと心の底から思う次第です。

では、次回もお楽しみに。

Comment(0)