CTC 教育サービス
[IT研修]注目キーワード Python UiPath(RPA) 最新技術動向 Microsoft Azure Docker Kubernetes
「404 Not Found」という表示をどこかで見た経験があることでしょう。
このブラウザで表示されるメッセージは、HTTPのステータスです。
クライアントであるウェブブラウザから送信されるHTTPリクエストに対してサーバであるウェブサーバからのHTTPレスポンスに埋め込まれる情報です。
ステータスは、三桁の数字(コード)で表現されます。
ステータスコードは該当する要求に対する態度とも言えましょう。
以下にRFCで規定されているステータスコード(一部)を列記します。
100 | Continue |
---|---|
101 | Switching Protocol |
200 | OK |
---|---|
201 | Created |
202 | Accepted |
203 | Non-Authoritative Information |
204 | No Content |
205 | Reset Content |
206 | Partial Content |
300 | Multiple Choices |
---|---|
301 | Moved Permanently |
302 | Found |
303 | See Other |
304 | Not Modified |
305 | Use Proxy |
306 | (Unused) |
307 | Temporary Redirect |
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 |
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)は述べています。
彼の著書である「夜と霧」(原題「それでも人生に然りと言う」所収の「一人の心理学者が強制収容所を体験する」)で力強く語っています。
どのような状況でも、それに対峙する態度を決めるのは自分である。
意思の自由は何人たりとも奪うことの出来ない、個としての存在意義なのだと説いています。様々な問題を抱える我々一人ひとりにフランクルからの心強いエールであると理解し日々を邁進したいと心の底から思う次第です。
では、次回もお楽しみに。
[IT研修]注目キーワード Python UiPath(RPA) 最新技術動向 Microsoft Azure Docker Kubernetes