コンピュータネットワーク通信 において、HTTP 404、404が見つかりません、404、404エラー、ページが見つかりません、またはファイルが見つかりませんの エラーメッセージは、ハイパーテキスト転送プロトコル(HTTP)標準応答コードであり、ブラウザは特定のサーバーと通信できたが、サーバーは要求されたものを見つけられなかったことを示します。このエラーは、サーバーが要求された情報を持っているかどうかを開示したくない場合にも使用されることがあります。[1]
通常、Web サイトのホスティング サーバーは、ユーザーが壊れたリンクや無効なリンクをたどろうとすると、「404 見つかりません」という Web ページを生成します。そのため、404 エラーは、World Wide Web上で発生する最もよく見られるエラーの 1 つです。

概要
HTTP 経由で通信する場合、サーバーは、Web ブラウザーのWeb ページ要求などの要求に対して、数値の応答コードと、オプション、必須、または許可されていない (ステータス コードに基づく) メッセージで応答する必要があります。コード 404 では、最初の数字は、 Uniform Resource Locator (URL)の入力ミスなどのクライアント エラーを示します。次の 2 桁は、発生した特定のエラーを示します。HTTP の 3 桁コードの使用は、FTPやNNTPなどの以前のプロトコルでのコードの使用に似ています。HTTP レベルでは、404 応答コードの後には、人間が判読できる「理由フレーズ」が続きます。HTTP 仕様では、「見つかりません」というフレーズ[1]が推奨されており、多くの Web サーバーは、デフォルトで 404 コードと「見つかりません」というフレーズの両方を含む HTML ページを発行します。
ページが移動または削除された場合、404 エラーが返されることがよくあります。最初のケースでは、ほとんどのサーバー構成ファイルで設定できる 301 Moved Permanently 応答を返すか、URL 書き換えによってURL マッピングまたはURL リダイレクトを使用する方が適切です。2 番目のケースでは、410 Gone を返す必要があります。これら 2 つのオプションは特別なサーバー構成を必要とするため、ほとんどの Web サイトでは使用されていません。
404 エラーは、指定された URL が存在しないサーバー名を参照している場合に表示されるDNSエラーと混同しないでください。404 エラーは、サーバー自体は見つかったが、サーバーが要求されたページを取得できなかったことを示します。
ソフト404エラー
一部のウェブサイトでは、「200 OK」応答コードを含む標準ウェブページを返すことで「見つかりません」エラーを報告し、ページが正しく読み込まれたと誤って報告します。これはソフト 404として知られています。「ソフト 404」という用語は、2004 年に Ziv Bar-Yossefらによって導入されました。[2]
ソフト 404 は、リンクが壊れているかどうかを自動的に検出する方法では問題になります。YahooやGoogleなどの一部の検索エンジンでは、ソフト 404 を検出するために自動プロセスを使用しています。[3]ソフト 404 は、 Apacheソフトウェアなどの特定の HTTP サーバー ソフトウェアを使用するときに、エラードキュメント 404 ( .htaccessファイルで指定) が相対パス (/error.html) ではなく絶対パス (例: http://example.com/error.html) として指定されている場合に、構成エラーの結果として発生することがあります。[ 4]これは、一部のブラウザー ( Internet Explorerなど) で、ブラウザー固有の「わかりやすい」エラー メッセージで提供されるものを置き換えるのではなく、カスタマイズされた 404 エラー メッセージを表示するように意図的に行うこともできます (Internet Explorer では、404 が提供され、受信した HTML が特定の長さよりも短い場合にこの動作がトリガーされ、ユーザーが手動で無効にすることができます)。
また、コンテンツがステータス 200 で返されるが、欠落しているページがドメイン ルート/ホームページにリダイレクトされる場合など、リダイレクトされたページからのものである「ソフト 3XX」エラーもあります。
プロキシサーバー
一部のプロキシ サーバーは、500 番台のエラー コードの方が適切な場合でも 404 エラーを生成します。プロキシ サーバーがリモート ホストの問題 (ホスト名解決の失敗や TCP 接続の拒否など) のためにページ要求を満たすことができない場合は、5xx 内部サーバー エラーとして記述する必要がありますが、代わりに 404 が返される可能性があります。これにより、特定の応答を期待してそれに基づいて動作するプログラムが混乱する可能性があります。これは、存在しない Web サーバーと、存在する Web サーバー上の見つからない Web ページを簡単に区別できなくなるためです。
意図的な 404
2004年7月、英国の通信事業者BTグループは、インターネット・ウォッチ財団によって違法の可能性があると特定されたコンテンツへのリクエストに対して404エラーを返すクリーンフィード・コンテンツ・ブロッキング・システムを導入した。[5]他のISPも同様の状況でHTTP 403 「禁止」エラーを返す。 [6]検閲を隠す手段として偽の404エラーを使用する慣行は、タイ[7]やチュニジアでも報告されている。[8] 2011年の革命前に検閲が厳しかったチュニジアでは、人々は偽の404エラーの性質に気づき、「見えない検閲者」を表す「アマール404」という架空のキャラクターを作り出した。[9]
Microsoft インターネット サーバー 404 サブステータス エラー コード
Microsoft が開発した Web サーバー ソフトウェアであるMicrosoft のインターネット インフォメーション サービス(IIS) は、404 応答とともにサブステータス コードのセットを返します。サブステータス コードは、404 ステータス コードに追加された 10 進数の形式をとります。サブステータス コードはIANAによって正式には認識されておらず、Microsoft 以外のサーバーからは返されません。
サブステータスコード
Microsoft の IIS 7.0、IIS 7.5、および IIS 8.0 サーバーは、404 エラーのより具体的な原因を示すために、次の HTTP サブステータス コードを定義します。
- 404.0 – 見つかりません。
- 404.1 – サイトが見つかりません。
- 404.2 – ISAPIまたはCGI の制限。
- 404.3 – MIMEタイプの制限。
- 404.4 – ハンドラーが構成されていません。
- 404.5 – リクエストフィルタリング構成によって拒否されました。
- 404.6 – 動詞は否定されました。
- 404.7 – ファイル拡張子が拒否されました。
- 404.8 – 非表示の名前空間。
- 404.9 – ファイル属性が非表示です。
- 404.10 – リクエスト ヘッダーが長すぎます。
- 404.11 – リクエストに二重のエスケープ シーケンスが含まれています。
- 404.12 – リクエストにハイビット文字が含まれています。
- 404.13 – コンテンツの長さが長すぎます。
- 404.14 – リクエスト URL が長すぎます。
- 404.15 – クエリ文字列が長すぎます。
- 404.16 – DAV 要求が静的ファイル ハンドラーに送信されました。
- 404.17 – ワイルドカード MIME マッピングを介して静的ファイル ハンドラーにマップされた動的コンテンツ。
- 404.18 – クエリ文字列シーケンスが拒否されました。
- 404.19 – フィルタリングルールによって拒否されました。
- 404.20 – URL セグメントが多すぎます。
カスタムエラーページ

ウェブサーバーは通常、より自然な説明、親サイトのブランド、場合によってはサイトマップ、検索フォーム、または 404 ページウィジェットを含むカスタマイズされた 404 エラーページを表示するように構成できます。ユーザーには表示されないプロトコルレベルのフレーズは、めったにカスタマイズされません。ただし、 Internet Explorer は、512 バイトを超えない限りカスタムページを表示せず、代わりに「フレンドリー」なエラーページを表示することを選択します。[10] Google Chromeには同様の機能が含まれており、ページのサイズが 512 バイト未満の場合、404 は Google アルゴリズムによって生成された代替の提案に置き換えられます。[11]もう 1 つの問題は、ページにファビコンがなく、別のカスタム 404 ページが存在する場合、ページを表示するたびに余分なトラフィックと長い読み込み時間が発生することです。[12] [13]
多くの組織は、本来は真面目なウェブサイトにユーモアを注入する機会として404エラーページを使用しています。たとえば、Metro UKはスケートボードに乗ったホッキョクグマを表示し、ウェブ開発会社Left Logicは簡単な描画プログラムを提供しています。[14] 2015年の英国総選挙キャンペーン中、主要政党はすべて404ページを使用して、政敵を攻撃するか、潜在的な支持者に関連政策を示しました。[15]ヨーロッパでは、Missing Children EuropeやChild Focusを含む複数のヨーロッパの組織によって作成されたNotFoundプロジェクトが、サイト運営者にコードスニペットを追加して、行方不明の子供に関するデータを提供するカスタマイズされた404エラーページ[16]を提供するように奨励しています。[17]
多くのウェブサイトは404エラーメッセージでウェブサイトのホームページへのリンクや検索ボックスなどの追加情報を送信しますが、ユーザーが求めていた正しいウェブページを見つけようとするウェブサイトもあります。一部のコンテンツ管理システム(CMS)では、これを行うための拡張機能が利用可能です。 [18]
404 エラーの追跡
ウェブサイトを巡回して 404 ステータス コードを返すページを見つけるツールは数多く存在します。これらのツールは、特定のウェブサイト内に存在するリンクを見つけるのに役立ちます。これらのツールの制限は、特定のウェブサイト内のリンクのみを見つけ、他のウェブサイトのリンクから発生する 404 を無視することです。その結果、これらのツールはウェブサイト上の 404 の 83% を見逃してしまいます。[19]これを回避する方法の 1 つは、外部リンクを分析して 404 エラーを見つけることです。[20]
404 エラーを発見する最も効果的な方法の 1 つは、Google Search Console、Google Analytics、またはクロール ソフトウェアを使用することです。
もう一つの一般的な方法は、ログファイル分析を使用して404ページへのトラフィックを追跡することです。[21 ]これは、404ユーザーがサイト上で何にアクセスしたかをより深く理解するのに役立ちます。404ページへのトラフィックを追跡する別の方法は、JavaScriptベースのトラフィック追跡ツールを使用することです。[22]
参照
参考文献
- ^ ab Fielding, R; Reschke, J, 編 (2014 年 6 月)。「404 Not Found」。HTTP/1.1 のセマンティクスとコンテンツ。インターネット技術タスク フォース (IETF)。6.5.4 節。doi : 10.17487 / RFC7231。S2CID 14399078。RFC 7231。2018年12月13 日に取得。
- ^ Ziv Bar-Yossef、Andrei Z. Broder、Ravi Kumar、Andrew Tompkins (2004)。「Sic transit gloria telae」。第 13 回 World Wide Web 国際会議の議事録。pp. 328– 337。doi : 10.1145 /988672.988716。ISBN 978-1581138443. S2CID 587547。
- ^ 「クローラーがサイトに存在したことのない奇妙な URL を要求するのはなぜですか?」Yahoo! Ysearch ヘルプ ページ。2014 年 7 月 15 日時点のオリジナルよりアーカイブ。2013年9 月 4 日閲覧。
- ^ 「ソフト 404 に別れを告げる」。Google 公式ブログ。2008年9 月 20 日閲覧。
- ^ 「LINX Public Affairs » Cleanfeed: the facts」。Publicaffairs.linx.net。2004年9月10日。2011年5月13日時点のオリジナルよりアーカイブ。2011年3月6日閲覧。
- ^ 「DEMON – エラー 403」。2012年6月14日閲覧。
- ^ Sambandaraksa, Don (2009年2月18日). 「古くからある偽の「404 Not Found」ルーチン - デッドリンク」. Bangkok Post . 2010年9月12日閲覧。
- ^ Noman, Helmi (2008年9月12日). 「チュニジア人ジャーナリストがFacebookをブロックしたとして政府機関を訴え、403ではなく404エラーメッセージの使用による損害を主張」Open Net Initiative 。 2010年11月21日閲覧。
- ^ 「チュニジアの反検閲運動:創造性、勇気、そして希望!」。グローバルボイスアドボカシー。2010年5月27日。 2010年8月28日閲覧。
- ^ 「Friendly HTTP Error Pages」. msdn.com. 2010 年 8 月 18 日。2010 年 12 月 2 日時点のオリジナルよりアーカイブ。2012年6 月 14 日閲覧。
- ^ 「問題 1695: Chrome に「フレンドリー 404」の表示をオフにするオプションが必要」。bugs.chromium.org。2021年12月 25 日閲覧。
- ^ Heng, Christopher (2008 年 9 月 7 日)。「Favicon.ico とは何か、そして Web サイトに Favicon アイコンを作成する方法」。The Site Wizard。2011年2 月 23 日閲覧。
- ^ 「卑劣な「favicon.ico が見つかりません」エラー」。Internet Folks 1999 年 8 月 3 日。
- ^ 「スケートボードをするクマから行方不明の子供まで: 404 Not Found エラー ページの威力」Metro、2011 年 6 月 6 日。2013年4 月 16 日閲覧。
- ^ 「政治的戦争」BBC Newsbeat 2015年4月27日2018年5月18日閲覧。
- ^ “Notfound.org”. notfound . 2014年9月2日時点のオリジナルよりアーカイブ。
- ^ 「行方不明の子供に関するメッセージが404エラーページに表示される」BBCニュース。2012年9月27日。 2014年9月20日閲覧。
- ^ Swenson, Sahala (2008 年 8 月 19 日)。「404 ページをより便利に」。公式 Google ウェブマスター向けセントラル ブログ。Google, Inc. 2009 年8 月 28 日閲覧。
- ^ 「404 につながるソース」 SpringTrax . 2013 年2 月 11 日閲覧。
- ^ Cushing, Anne (2013 年 4 月 2 日)。「保存する価値のある 404 ページを識別するためのデータ中心のアプローチ」。Search Engine Land。2013年6 月 7 日閲覧。
- ^ 「404 エラーの追跡と防止」 404errorpages.com 。 2013 年6 月 7 日閲覧。
- ^ 「404 エラーを理解する」 SpringTrax.com 。2013年6 月 7 日閲覧。
外部リンク
- より便利な404
- 「 404 見つかりません」。ハイパーテキスト転送プロトコル (HTTP/1.1): セマンティクスとコンテンツ。インターネット エンジニアリング タスク フォース。sec. 6.5.4。doi : 10.17487/ RFC7231。RFC 7231 。
- ErrorDocument ディレクティブ – Apache 2.0 Web サーバーのカスタム エラー ページに関する指示
- 404: Not Found –エラーコードに関する受賞歴のあるフィルクソング
