「404」という数字の正体
Web サイトにアクセスして「404 Not Found」と表示された経験は、インターネットを使う人なら誰でもあるでしょう。ページが見つからないことは分かりますが、なぜ「404」という中途半端な数字なのでしょうか。
実は、404 は HTTP ステータスコードの一つです。Web サーバーがブラウザに「リクエストの結果」を伝えるための 3 桁の番号で、先頭の数字にはルールがあります。
- 1xx: 処理中 (「受け取ったよ、ちょっと待ってね」)
- 2xx: 成功 (200 OK が代表。「うまくいったよ」)
- 3xx: リダイレクト (「別の場所に移動したよ」)
- 4xx: クライアントエラー (「あなたのリクエストに問題があるよ」)
- 5xx: サーバーエラー (「こっちの問題でごめんね」)
404 は「4xx = あなた側の問題」の一つで、「04 = 見つからない」を意味します。つまり「あなたが指定した URL のページは、このサーバーに存在しません」というメッセージです。
「CERN の 404 号室」伝説は本当か
インターネット上には、「404 の由来は CERN (欧州原子核研究機構) の 404 号室にあったサーバーに由来する」という有名な都市伝説があります。Web の発明者ティム・バーナーズ=リーが CERN の 404 号室で働いており、ファイルが見つからないときに「404 号室に聞いてみたけど、なかったよ」と返したのが起源だ、という話です。
しかし、これは事実ではありません。CERN の建物に 404 号室が存在するかどうかも確認されておらず、ティム・バーナーズ=リー自身もこの説を否定しています。404 という番号は、HTTP の仕様を策定する過程で、ステータスコードの体系的な番号付けの一部として決められたものです。
404 ページのクリエイティブな活用
多くの企業は、404 ページをユーザーを楽しませる機会として活用しています。
- GitHub: 「Star Wars」風のパララックスアニメーションが表示される。「This is not the web page you are looking for」というメッセージ付き
- Pixar: 映画「インサイド・ヘッド」のキャラクター「カナシミ」が泣いているイラストが表示される
- LEGO: レゴのミニフィグが壊れたページを修理しているアニメーション
- Bloomberg: 「Are you lost?」と表示され、市場データへのリンクが提示される
404 ページは、ユーザーが「行き止まり」に到達したときに、サイトから離脱させずにトップページや検索機能に誘導する重要な役割を持っています。
404 以外の「面白い」ステータスコード
- 418 I'm a teapot: 1998 年のエイプリルフールに RFC 2324 で定義された「ティーポットにコーヒーを淹れるよう要求した」ときのエラー。ジョークだが、正式な RFC として存在する
- 451 Unavailable For Legal Reasons: 法的理由でアクセスできないページ。レイ・ブラッドベリの小説「華氏 451 度」(本が燃やされるディストピア小説) にちなんで番号が選ばれた
- 503 Service Unavailable: サーバーが一時的に過負荷。人気チケットの発売開始時によく見かける
- 301 Moved Permanently: ページが恒久的に移動した。古い URL にアクセスすると自動的に新しい URL に転送される
404 エラーを減らすには
Web サイトの運営者にとって、404 エラーは SEO にも悪影響を与えます。検索エンジンは、404 が多いサイトを「メンテナンスが行き届いていない」と判断する可能性があります。
- ページを削除・移動したら、301 リダイレクトを設定する
- 内部リンクを定期的にチェックし、リンク切れを修正する
- カスタム 404 ページを用意し、ユーザーをトップページや検索に誘導する
- 404 ページであってもセキュリティヘッダーを正しく設定し、エラーページ経由の攻撃を防ぐ
IP 確認さんでも、存在しないページにアクセスした場合はカスタム 404 ページが表示され、トップページへの導線を提供しています。
まとめ
404 は HTTP ステータスコードの体系的な番号付けから生まれた番号であり、CERN の 404 号室とは無関係です。HTTPS で保護されたサイトでも 404 は発生しますが、通信自体は暗号化されているため、どのページにアクセスしようとしたかは第三者には分かりません。次に 404 ページに出会ったら、そのサイトがどんなクリエイティブな 404 ページを用意しているか、ちょっと楽しんでみてください。
HTTP プロトコルと Web サーバーの仕組みを学びたい方には、Web 技術の入門書が参考になります。