top page > computer > web > rfc > rfc7231 > 6_status_code
更新日:
文責: 重城良国

RFC 7231 6. ステータスコード

参照: RFC 7231 6.

Googlebotとステータスコード

ステータスコードはブラウザに重要な情報を伝える。「ページが見つかったよ」「ページが見つからないよ」「そのページは移動したよ」等。それに反応してブラウザは様々な挙動を取る。

ステータスコードはブラウザに対してだけでなく、ボットにとっても重要な意味を持つ。最近、ステータスコードの重要性を実感したことがある。Googlebotに対して適切なステータスコードを返さなかったために、ページがクロールされなかったのだ。ページがクロールされなければgoogle検索の結果から消えてしまう。これは、たとえば、企業のホームページにとっては大きな打撃となりうるだろう。この問題についてはこのページが参考になる。

一言で言えばrobots.txtへのアクセスに対して「見つかったよ(200)」または「ないよ(404)」以外のステータスコードを返すか、または応答そのものがなかった場合Googlebotはそのサイトをクロールしてくれないということらしい。ここに約3行で簡単にまとめた。

いずれにしても適切なステータスコードを返すのがサーバの礼儀である。「適切なステータスコード」が何かということをここにまとめよう。

ステータスコードとは

HTTPの応答の1行目(ステータス行)は以下のような構造である。

status-line = HTTP-version SP status-code SP reason-phrase CRLF

ステータス行のなかで応答の意味を示す3桁の数字がstatus-codeである。

status-code = 3DIGIT

ステータスコードの追加

ステータスコードは追加可能である。クライアントはすべてのコードの意味を知っている必要はない。もちろん知っていたほうが良いけど。クライアントはそれぞれのコードを1番目の数字によって分類できれば良い。わからないコードはx00として扱えば良いが、ただしそれをキャッシュしてはならない。

ステータスコードの分類

1xx
情報
処理を継続する
2xx
成功
受理された
3xx
リダイレクション
追加の処理が必要
4xx
クライアントエラー
リクエストに誤りがあった
5xx
サーバエラー
リクエストの処理に失敗した

ステータスコードの一覧

CodeReason-Phrase
100Continue
101Switching Protocols
200OK
201Created
202Accepted
203Non-Authoritative Information
204No Content
205Reset Content
206Partial Content
300Multiple Choices
301Moved Permanently
302Found
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 Timeout
409Conflict
500Internal Server Error
501Not Implemented
502Bad Gateway
503Service Unavailable
504Gateway Timeout
505HTTP version Not Supported

(それぞれのコードについて説明していく予定、また410 Gone等が定義されているRFCについても調べ、まとめる予定。)

正当なCSSです! HTML5 Powered with CSS3 / styling, and Semantics